Фильтровать и сортировать массив JavaScript
У меня есть такой массив:
[{
"number": "4",
"fileName": "fileXX",
"rating": {
"average": 6.4
}
}, {
"number": "3",
"fileName": "fileXX",
"rating": {
"average": 5.4
}
}, {
"number": "4",
"fileName": "fileXX",
"rating": {
"average": 5.4
}
}]
Я пытаюсь создать новый массив по следующим критериям:
Получить наивысший рейтинг (array.rating.average
) каждого номера (array.number
)Выход должен быть:
[{
"number": "4",
"fileName": "fileXX",
"rating": {
"average": 6.4
}
}, {
"number": "3",
"fileName": "fileXX",
"rating": {
"average": 5.4
}
}
}]
Мне только что удалось отсортировать по самой высокой оценке:
array.sort(function(a , b) {
return a.rating.average - b.rating.average;
});
array.reverse();
Но сейчас я хочу только один объект на дубликатarray.number
сохраняя тот, который имеет самый высокийarray.rating.average
.