如何对对象中特定键的所有值求和?
How to sum all of values from specific key in object?
假设我有一个包含多个对象的数组,例如:
var arr = [{ 'credit': 1, 'trash': null }, { 'credit': 2, 'trash': null}]
我想从 arr
数组中获取所有 credit
值的总和。所以预期的总和值为 3。所以我使用了这段代码:
arr.reduce((obj, total) => obj.credit + total)
但是当我 运行 这个时,我得到 "1[object Object]"
这真的很奇怪。
Ps:我正在尝试使用 ES6 而不是 ES5
来实现它
你可以在这里使用.forEach()
:
var arr = [{ 'credit': 1, 'trash': null }, { 'credit': 2, 'trash': null}];
var total = 0;
arr.forEach(item => {
total += item.credit;
});
console.log(total);
两个问题:您的 total
和 obj
参数是倒退的,您需要提供一些东西来初始化 total
变量(即 ,0
部分)
arr.reduce((total, obj) => obj.credit + total,0)
// 3
假设我有一个包含多个对象的数组,例如:
var arr = [{ 'credit': 1, 'trash': null }, { 'credit': 2, 'trash': null}]
我想从 arr
数组中获取所有 credit
值的总和。所以预期的总和值为 3。所以我使用了这段代码:
arr.reduce((obj, total) => obj.credit + total)
但是当我 运行 这个时,我得到 "1[object Object]"
这真的很奇怪。
Ps:我正在尝试使用 ES6 而不是 ES5
来实现它你可以在这里使用.forEach()
:
var arr = [{ 'credit': 1, 'trash': null }, { 'credit': 2, 'trash': null}];
var total = 0;
arr.forEach(item => {
total += item.credit;
});
console.log(total);
两个问题:您的 total
和 obj
参数是倒退的,您需要提供一些东西来初始化 total
变量(即 ,0
部分)
arr.reduce((total, obj) => obj.credit + total,0)
// 3