我正在尝试调用此reduce函数:
users.reduce(function (acc, obj) { return acc + obj.age/3; }, 0);
在这个函数中:
function computeUserAverageAge(users) {};
测试这些对象数组的平均值" age"值:
const users = [{
name: 'Brendan Eich',
age: 56,
}, {
name: 'Linus Torvalds',
age: 48,
}, {
name: 'Margaret Hamilton',
age: 81,
}];
感谢你的帮助和耐心!
答案 0 :(得分:2)
只需在函数中移动它并返回结果。
注意:而非使用3
代替users.length
。
我还认为,在数学上,你应该在加起来后除以数字,而不是每次迭代。
const users = [{
name: 'Brendan Eich',
age: 56,
}, {
name: 'Linus Torvalds',
age: 48,
}, {
name: 'Margaret Hamilton',
age: 81,
}];
function computeUserAverageAge(users) {
return Math.round(users.reduce((acc, obj) => acc + obj.age, 0) / users.length);
};
console.log(computeUserAverageAge(users))
答案 1 :(得分:0)
听起来你只需要返回reduce
的结果。为简洁起见,也可以使用箭头功能:
const computeUserAverageAge = users => users.reduce((a, { age }) => a + age, 0) / 3;
console.log(computeUserAverageAge(
[{
name: 'Brendan Eich',
age: 56,
}, {
name: 'Linus Torvalds',
age: 48,
}, {
name: 'Margaret Hamilton',
age: 81,
}]
));