[英]How to sort objects based on their array sum ? React.js
所以我有 data.js,我在其中存儲了我的 JSON ......它看起來像這樣:
[
{
name: 'Adam Doe',
city: 'New York',
mark: [8,10,10,10]
},
{
name: 'Catlyn Stronk',
city: 'Las Vegas',
mark: [2,2,2,2,2,3,3,3,4]
},
{
name: 'Anna Doe',
city: 'Michigan',
mark: [10,8,8,4,3,2]
}
]
我怎樣才能制作一個數組並將得分最高的人放在首位? 因此,由於 Adam Doe 將獲得 9.5 的最高分,他應該是名單上的第一名,依此類推……我在 React.js 工作
您可以創建一個avg
function,然后根據該平均值對數組進行sort
。
const people = [ { name: 'Adam Doe', city: 'New York', mark: [8,10,10,10] }, { name: 'Catlyn Stronk', city: 'Las Vegas', mark: [2,2,2,2,2,3,3,3,4] }, { name: 'Anna Doe', city: 'Michigan', mark: [10,8,8,4,3,2] } ] const avg = (arr) => arr.reduce((acc, el) => acc + el, 0) / arr.length; people.sort((a, b) => avg(b.mark) - avg(a.mark)); console.log(people);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.