我想按鍵對物件值求和。我有一組物件陣列。
這里:[
我不知道如何解決它。我用谷歌搜索沒有成功。
我想獲得回圈每次迭代的總數。在給出的示例中,這將是:3 然后 6
TIA。
uj5u.com熱心網友回復:
展平陣列,然后.reduce
求和。
var arr2 = [ [{ 'credit': 1, 'trash': null }, { 'credit': 2, 'trash': null}],
[{ 'credit': 3, 'trash': null }, { 'credit': 3, 'trash': null}]
];
console.log(arr2.flat().reduce((total, obj) => obj.credit total,0));
如果您不想展平,則也必須.reduce
對內部陣列使用嵌套。
var arr2 = [ [{ 'credit': 1, 'trash': null }, { 'credit': 2, 'trash': null}],
[{ 'credit': 3, 'trash': null }, { 'credit': 3, 'trash': null}]
];
console.log(
arr2.reduce(
(total, subarr) => total subarr.reduce(
(a, { credit }) => a credit,
0
),
0
)
);
如果您不關心整個總數,而只關心每個子陣列的總數,那么只需.reduce
對陣列的每個元素執行簡單的操作。
var arr2 = [ [{ 'credit': 1, 'trash': null }, { 'credit': 2, 'trash': null}],
[{ 'credit': 3, 'trash': null }, { 'credit': 3, 'trash': null}]
];
for (const subarr of arr2) {
console.log(subarr.reduce((total, obj) => obj.credit total,0));
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/504536.html
標籤:javascript 数组 目的 和
上一篇:For..of回圈只運行一次