在 JavaScript 中根據 2 個其他物件建立物件


假設我們有兩個這樣定義的 JavaScript 物件 −

const a = {
   a: 1,
   af: function() { console.log(this.a) },
};
const b = {
   b: 2,
   bf: function() { console.log(this.b) },
};

我們要求編寫一個 JavaScript 函式,該函式將從這兩個物件中取值。建立另一個物件,它將獲取 a 和 b 的屬性,如下所示 −

const output = {
   a: 1,
   af: function() { console.log(this.a) },
   b: 2,
   bf: function() { console.log(this.b) },
}

請注意,a 和 b 需要保持不變。

示例

此程式碼如下 −

const a = {
   a: 1,
   af: function() { console.log(this.a) },
};
const b = {
   b: 2,
   bf: function() { console.log(this.b) },
};
const extend = function(){
   let i, j, x, res=(arguments[0] || {});
   for (i = 1; i < arguments.length; i++) {
      const x = arguments[i];
      for (j in x) {
         if (x.hasOwnProperty(j)) {
            res[j] = x[j];
         }
      }
   }
   return res;
};
const c = extend({}, a, b);
console.log(c);

輸出結果

控制檯中的輸出結果為 −

{ a: 1, af: [Function: af], b: 2, bf: [Function: bf] }

更新日期:2020 年 11 月 24 日

83 次瀏覽

開始您的 職業

完成課程以獲得認證

開始
廣告