在 JavaScript 中新增匹配的物件值
假設我們有一個這樣的物件陣列 −
const arr = [{a: 2, b: 5, c: 6}, {a:3, b: 4, d:1},{a: 1, d: 2}];每個物件都鍵繫結唯一的自身(對於它來說成為有效物件),但是兩個不同的物件可以具有相同的鍵(出於此問題的目的)。
我們需要編寫一個 JavaScript 函式,該函式取一個這樣的陣列並返回一個物件,其中包含陣列中存在的所有唯一鍵及其值的累加和。
因此,結果物件看起來應該像 −
const output = {a: 6, b: 9, c: 6, d: 3};因此,讓我們編寫此函式的程式碼 −
示例
其程式碼如下 −
const arr = [{a: 2, b: 5, c: 6}, {a: 3, b: 4, d:1}, {a: 1, d: 2}];
const sumArray = arr => {
const res = {};
for(let i = 0; i < arr.length; i++){
Object.keys(arr[i]).forEach(key => {
res[key] = (res[key] || 0) + arr[i][key];
});
};
return res;
};
console.log(sumArray(arr));輸出
控制檯中的輸出如下 −
{ a: 6, b: 9, c: 6, d: 3 }
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP