JavaScript 程式將兩個物件合併到一個物件中,併為相同的鍵新增值


我們必須編寫一個函式,該函式接受兩個物件,將它們合併到一個物件中,併為相同的鍵新增值。這必須線上性時間和常數空間中完成,這意味著最多隻使用一個迴圈併合並之前物件的屬性,並且不建立任何新變數。

因此,讓我們編寫此函式的程式碼 −

示例

const obj1 = {
   value1: 45,
   value2: 33,
   value3: 41,
   value4: 4,
   value5: 65,
   value6: 5,
   value7: 15,
};
const obj2 = {
   value1: 34,
   value3: 71,
   value5: 17,
   value7: 1,
   value9: 9,
   value11: 11,
};
const mergeObjects = (obj1, obj2) => {
   for(key in obj1){
      if(obj2[key]){
         obj1[key] += obj2[key];
      };
   };
   return;
};
mergeObjects(obj1, obj2);
console.log(obj1);

輸出

控制檯中的輸出為 −

{
   value1: 79,
   value2: 33,
   value3: 112,
   value4: 4,
   value5: 82,
   value6: 5,
   value7: 16
}

更新於: 2020-08-24

414 瀏覽量

開啟職業發展 生涯

完成課程即可獲得認證

開始學習
廣告