是否可以扩展对象而不覆盖已设置的属性? 在下面的例子中,我正在寻找一种方法为猫添加2个翅膀,但保留它是4条腿。
var cat = { legs: 4 };
var bird = { legs: 2, wings: 2 }
// some references in my application to the original cat
var some_cat = cat;
$.extend( cat, bird );
// expected { legs: 4, wings: 2 }
console.log( some_cat );
更新
我忘了在原始问题/示例中说清楚,但重要的是它修改原始猫对象。
答案 0 :(得分:4)
尝试类似 -
for (prop in bird) {
if(!cat.hasOwnProperty(prop)) {
cat[prop] = bird[prop];
}
}
cat = {leg:4,wings:2}