我有两个对象,前一个和新的一个,我试图比较并获得这些对象的差异,作为补丁有效载荷从补丁API发送到,
比较对象中的每个属性,如果任何属性有任何差异,我希望新对象中的所有这些差异作为有效负载
我怎样才能做到这一点,请帮我找到解决方案?是否有任何lodash
的方法,为这个解决方案?
let obj = {
Name: "Ajmal",
age: 25,
email: "ajmaln@gmail.com",
contact: [12345678, 987654321],
address: {
houseName: "ABC",
street: "XYZ",
pin: 67891
}
}
let obj2 = {
Name: "Ajmal",
age: 25,
email: "something@gmail.com",
contact: [12345678, 11111111],
address: {
houseName: "ABC",
street: "XYZ",
pin: 111
}
}
预期结果有效负载如下所示
let payload = {
email: "something@gmail.com",
contact: [12345678, 11111111],
address: {
pin: 111
}
}
2条答案
按热度按时间nkcskrwz1#
Mista NewbeedRecursion为您服务:
jhdbpxl92#
这里有一个immer的方法,它可以指导您找到一个合适的解决方案。这不是一个通用的方法,但通过依赖immer可以使事情变得更容易。
获取补丁程序更新
日志更改操作
希望这对你有所帮助
干杯