如何用純 JavaScript 連線兩個 JavaScript 物件?


假設我們定義瞭如下兩個物件 −

const obj1 = {
   id1: 21,
   name1: "Kailash"
};
const obj2 = {
   id2: 20,
   name2: "Shankar"
};

我們要求編寫一個 JavaScript 函式,它能接收這兩個物件併合併為一個單獨的物件。

換句話說,我們要求或多或少實現 Object.assign() 函式的功能。

示例

程式碼如下 −

const obj1 = {
   id1: 21,
   name1: "Kailash"
};
const obj2 = {
   id2: 20,
   name2: "Shankar"
};
const concatObjects = (...sources) => {
   const target = {};
   sources.forEach(el => {
      Object.keys(el).forEach(key => {
         target[key] = el[key];
      });
   });
   return target;
}
console.log(concatObjects(obj1, obj2));

輸出

控制檯中的輸出如下 −

{ id1: 21, name1: 'Kailash', id2: 20, name2: 'Shankar' }

更新日期:21-11-2020

307 瀏覽

開啟你的 職業生涯

完成課程並獲得認證

開始
廣告