在 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] }
廣告