Filtern und sortieren Sie ein JavaScript-Array
Ich habe ein Array wie dieses:
[{
"number": "4",
"fileName": "fileXX",
"rating": {
"average": 6.4
}
}, {
"number": "3",
"fileName": "fileXX",
"rating": {
"average": 5.4
}
}, {
"number": "4",
"fileName": "fileXX",
"rating": {
"average": 5.4
}
}]
Ich versuche, ein neues Array mit den folgenden Kriterien zu erstellen:
Höchste Bewertung erhaltenarray.rating.average
) jeder Zahl array.number
)Output sollte sein:
[{
"number": "4",
"fileName": "fileXX",
"rating": {
"average": 6.4
}
}, {
"number": "3",
"fileName": "fileXX",
"rating": {
"average": 5.4
}
}
}]
Ich habe es gerade geschafft, nach der höchsten Bewertung zu sortieren:
array.sort(function(a , b) {
return a.rating.average - b.rating.average;
});
array.reverse();
Aber jetzt möchte ich nur ein Objekt pro Duplikatarray.number
, behalte das mit dem höchstenarray.rating.average
.