我正在尝试根据另一个对象的属性来匹配更新对象的属性。属性名称必须匹配。我想要实现的一个非常简单的例子如下:
给出两个对象:
var obj1 = {
one: "1",
two: "2",
three: {
threeDotOne: "3.1",
threeDotTwo: "3.2",
threeDotAny: "3.3"
}
}
var obj2 = {threeDotAny: "3.4"}
updateObjectOneProperty(obj1,obj2)
,结果如下:
var obj1 = {
one: "1",
two: "2",
three: {
threeDotOne: "3.1",
threeDotTwo: "3.2",
threeDotAny: "3.4"
}
}
这里我假设在obj1中只有一个具有这样名字的属性,这很好。
有没有人知道如何做到这一点?
答案 0 :(得分:2)
jQuery的$.extend
可以做到:
var obj1 = {
one: "1",
two: "2",
three: {
threeDotOne: "3.1",
threeDotTwo: "3.2",
threeDotAny: "3.3"
}
}
var obj2 = {
threeDotAny: "3.4"
}
$.extend(obj1.three, obj2);
如果您希望能够在不指定obj1.three
的情况下执行此操作,three
将需要成为obj2
的属性,否则无法知道将其放在何处。