gpt4 book ai didi

javascript - 如何比较两个 JSON 具有相同的属性而无需排序?

转载 作者:行者123 更新时间:2023-12-03 21:39:04 25 4
gpt4 key购买 nike

我尝试比较这两个 JSON 对象:

<input type="hidden" id="remoteJSON" name="remoteJSON" value='{"allowExternalMembers": "false", "whoCanJoin": "CAN_REQUEST_TO_JOIN"}' /><br />
<input type="hidden" id="localJSON" name="localJSON" value='{"whoCanJoin": "CAN_REQUEST_TO_JOIN", "allowExternalMembers": "false"}' /><br />

我使用 javascript 获取了值,并尝试与以下内容进行比较: JSON.stringify(remoteJSON) == JSON.stringify(localJSON) 但这返回 false:似乎属性的顺序是重要。

我什至尝试与 this solution 进行深度比较并且总是得到错误的返回。

有没有一种快速的方法可以用 jQuery 解决这个问题(即用于比较 JSON 的库)?

最佳答案

洛达什 _.isEqual允许你这样做:

var
remoteJSON = {"allowExternalMembers": "false", "whoCanJoin": "CAN_REQUEST_TO_JOIN"},
localJSON = {"whoCanJoin": "CAN_REQUEST_TO_JOIN", "allowExternalMembers": "false"};

console.log( _.isEqual(remoteJSON, localJSON) );
<script src="https://cdn.jsdelivr.net/npm/lodash@4.17.10/lodash.min.js"></script>

关于javascript - 如何比较两个 JSON 具有相同的属性而无需排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26049303/

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