gpt4 book ai didi

javascript - 通过比较对象的属性来过滤对象数组

转载 作者:行者123 更新时间:2023-11-30 20:02:15 24 4
gpt4 key购买 nike

我试图在这个数组中的一个对象上找到最高分,但结果不正确。我们应该再次将分数重置为 0 吗?我试图将 score 变量放在 obj[i.class] 下面,但没有任何改变:

function theScore (students) {
var obj = {};
score = 0;
for(i of students){
if(score < i.score) {
obj[i.class] = {
name: i.name,
score: i.score
};
};
};
return obj;
};


console.log(theScore([
{
name: 'Sara',
score: 90,
class: 'A'
},
{
name: 'Poyi',
score: 85,
class: 'B'
},
{
name: 'Adert',
score: 74,
class: 'A'
},
{
name: 'Shynta',
score: 78,
class: 'B'
}
]));

期望的输出:

{
A: {
name: 'Sara',
score: 90
},
B: {
name: 'Poyi',
score: 85
}
}

最佳答案

您不能大大简化函数的 obj 分配吗?

function theScore (students) {
var obj = {};
var score = 0;
for(i of students){
if(i.score > score ) {
score = i.score; // Keep track of the highest-score-found-so-far
obj = i; // Keep track of the highest scoring object
}
}
return obj;
}

关于javascript - 通过比较对象的属性来过滤对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53249292/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com