Рейтинг пользователей по счету
Даны пользователи и их счет, как сделать так, чтобы выводился сначала пользователь, который имеет большее количество очков?
const={
userName1: 'Boris',
userScore1: 23,
userName2: 'Denis',
userScore2: 53,
userName3: 'Ahmed',
userScore3: 44
}
Как сделать так, чтоб сначала выводился 1 - Denis, 2 - Ahmed, 3 - Boris?
Ответы (1 шт):
Автор решения: Igor
→ Ссылка
const users = {
userName1: 'Boris',
userScore1: 23,
userName2: 'Denis',
userScore2: 53,
userName3: 'Ahmed',
userScore3: 44
};
const uArr = [];
let i = 0;
while (users['userName' + ++i]) {
uArr.push({ name: users['userName' + i], score: users['userScore' + i] });
}
uArr.sort((a, b) => b.score - a.score);
uArr.forEach((item, i) => console.log(i + 1, item.name, item.score));