gpt4 book ai didi

javascript - 如何深入比较两个 javascript 对象并返回所有差异,包括新添加的数组和相同的原始格式?

转载 作者:行者123 更新时间:2023-11-29 10:56:45 25 4
gpt4 key购买 nike

我正在比较两个 javascript 对象。如何使用优化代码列出所有差异?

我也尝试了几个插件 deep-diff 和 lodash。Lodash 返回同一行的差异,但没有返回任何其他添加的字段。

const a = {
"id":1,
"name":xyz
}

const b = {
"id":1,
"name":xyz abc,
"address":pqr
}

我期望输出:{"name":xyz abc","address":pqr}

最佳答案

    Object.keys(a).forEach(x => { if (Object.keys(b).every(y => b[y] !== a[x])) { diff[x] = a[x] } })
Object.keys(b).forEach(x => { if (Object.keys(a).every(y => a[y] !== b[x])) { diff[x] = b[x] } })
console.log(diff)

关于javascript - 如何深入比较两个 javascript 对象并返回所有差异,包括新添加的数组和相同的原始格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55611008/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com