我正在处理一个非常简单的数据集,使用 reduce
函数进行操作,但是得到了 NaN
的结果,这不是我期望的:
let students = [{name: 'Leah', grade: 94},{name: 'Savannah', grade: 73},{name: 'Killian', grade: 38}];
let highest = students.reduce(
(high, current) => Math.max(high.grade, current.grade)
)
console.log(highest); // outputs NaN
奇怪的是,如果我将第一行改为以下内容:(只删除第三个对象)
let students = [{name: 'Leah', grade: 94},{name: 'Savannah', grade: 73}];
如果只有前面的内容,程序将正确运行并输出94。
为什么添加一个额外的对象会导致问题?
high
和current
的值。你应该能够很快找出问题所在。 - user663031