gpt4 book ai didi

javascript - 如何用 lodash 对 2 个对象进行深度比较?

转载 作者:IT老高 更新时间:2023-10-28 13:12:56 32 4
gpt4 key购买 nike

我有 2 个不同的嵌套对象,我需要知道它们的嵌套属性之一是否不同。

var a = {};
var b = {};

a.prop1 = 2;
a.prop2 = { prop3: 2 };

b.prop1 = 2;
b.prop2 = { prop3: 3 };

具有更多嵌套属性的对象可能会更复杂。但这是一个很好的例子。我可以选择使用递归函数或带有 lodash 的东西......

最佳答案

一个简单而优雅的解决方案是使用 _.isEqual ,进行深度比较:

var a = {};
var b = {};

a.prop1 = 2;
a.prop2 = { prop3: 2 };

b.prop1 = 2;
b.prop2 = { prop3: 3 };

console.log(_.isEqual(a, b)); // returns false if different
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js"></script>

但是,此解决方案没有显示不同的属性。

关于javascript - 如何用 lodash 对 2 个对象进行深度比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31683075/

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