如何将两个对象合并在一起。并在每次数字匹配时将新对象添加到正文中? 我尝试了传播算子,但它是在覆盖值而不是更改它。
之前:
let obj = {
number: "123",
body:[
{
id:'client',
text:'hi'
}
]
}
let obj2 = {
number: "123",
body:[
{
id:'client',
text:'Hello there'
}
]
}
我需要将它们合并以具有:
obj = {
number: "123",
body:[
{
id:'client',
text:'hi'
},
{
id:'client',
text:'Hello there'
}
]
}
答案 0 :(得分:1)
只需检查两种情况下的number
键是否相等,然后迭代obj2.body
并推动obj.body
中的每个项目
let obj = {
number: "123",
body: [{
id: 'client',
text: 'hi'
}]
}
let obj2 = {
number: "123",
body: [{
id: 'client',
text: 'Hello there'
}]
}
if (obj2.number === obj.number) {
obj2.body.forEach(item => {
obj.body.push(item)
})
}
console.log(obj)
答案 1 :(得分:0)
如果只有两个对象,您可以这样做
if (obj.number == obj2.number) {
obj.body = obj.body.concat(obj2.body)
console.log("Here's is your new object", obj);
}