我有两个对象obj1和obj2。如果obj2有一个obj1没有的键,那么obj2键/值对将被添加到obj1。如何从另一个对象添加属性,如果它不存在于JavaScript中的第一个对象中
例如:
obj1 = {
a:1,
b:2
}
obj2 = {
b:4,
c:3
}
C:3将被投入OBJ1。
下面是我作为一个尝试,但我的大脑正在这个圈子里运行。我根本不能修改第二个对象(不需要),如果它也存在于obj2中,我必须将值保留在obj1中。
function extend(obj1, obj2) {
function comparison(obj1,obj2){
var object1keys = Object.keys(obj1)
var object2keys = Object.keys(obj2)
var flag = 0
for(var i = 0; i<object2keys.length;i++){
flag = 0
for(var j = 0; j<object1keys.length;j++){
if(object2keys[i] === object1keys[j]){
flag = 1
console.log(i,j)
break
}
if(flag = 0 && j == object1keys.length - 1){
obj1[i] = obj2[j]
}
}
}
return obj1
}
return obj1
}
的可能的复制[合并JS对象,而不会覆盖(http://stackoverflow.com/questions/7549574/merge-js-objects-without-overwriting) –