如何将内容从一个对象复制到另一个Js



我有一个obejct:

obj1 = {
id: 123,
name: "ABC test",
desc: "SPme test sdesctiption",
data: [{name:"data1"}],
createdBy: "Some person",
updatedBy: "Some persone22"
}

现在,当我们从客户端编辑这些数据的详细信息时,我们只需要更新对象中已更改的字段。例如:

updatedObj = {
id: 123,
name: "ABC12222222 test", // changed
desc: "SPme test sdesctiption",
data: [{name:"data1"}],
createdBy: "Some person",
updatedBy: "Some persone22"
}

在上面的情况下,我只想更改名称,但这些数据可以是动态的,并且基于用户的更改,我们只需要更新obj1中的字段

我试过了:

newObj = Object.assign(obj1, {updatedObj})

但这会在obj1中插入所有新对象。我试着使用对象的Shallow副本,但效果不太好。

有什么想法可以实现吗?

由于updatedObj拥有所有字段,而不仅仅是更改后的字段

newObj = updatedObj

最新更新