Объекты и сортировкиСтруктурыeasy

Who Is Online

Дан массив пользователей чата. Про каждого пользователя известны имя, статус и время последней активности.

Напишите функцию, которая определяет, кто online, offline и away. Если кто-то онлайн, но последний раз был активен более 10 минут назад, то он считается away.

const users = [ { username: 'David', status: 'online', lastActivity: 10 }, { username: 'Lucy', status: 'offline', lastActivity: 22 }, { username: 'Bob', status: 'online', lastActivity: 104 }, ]; console.log(whosOnline(users)); // { // online: ['David'], // offline: ['Lucy'], // away: ['Bob'] // }

Если пользователей с каким-то статусом вообще нет в чате, то такого поля не должно быть в объекте.

const users2 = [ { username: 'David', status: 'online', lastActivity: 10 }, { username: 'Lucy', status: 'offline', lastActivity: 22 }, { username: 'Bob', status: 'online', lastActivity: 5 }, ]; console.log(whosOnline(users2)); // { // online: ['David', 'Bob'], // offline: ['Lucy'], // }