我有2个json数组,如下所示,稍后我将进行jQuery扩展。我想使用jQuery,只比较array1和array2中的所有元素(a,b),检查(a,b)是否存在于array2中,如果存在,则得到差异。
我尝试了下面的代码,但不知怎么的,我总是得到意外的控制台输出作为下面的实际返回。如有任何建议,我将不胜感激。
var array1 = {a: "AT", b: "1000"};
var array2 = {c: 0, d: 100, a: "AT", b: "1002"};
console.log($(array1).not(array2).get());预期收益:
[Object]
0: Object
b: "1000"
__proto__: Object
length: 1
__proto__: Array[0]实际回报:
[Object]
0: Object
a: "AT"
b: "1000"
__proto__: Object
length: 1
__proto__: Array[0]发布于 2013-11-20 12:18:54
我已经参考了下面的链接,并相应地修改了给出的答案。修改后的答案如下。
参考资料:Compare two JSON arrays in JQuery or Javascript
修改后的答案:
var origArrayGroups = {c: 0, d: 100, a: "AT", b: "1002"};
var userArrayGroups = {a: "AT", b: "1000"};
var diff = {};
for (var prop in userArrayGroups) {
console.log("Comparing element: " + prop);
if(userArrayGroups[prop] != origArrayGroups[prop])
{
diff[prop] = origArrayGroups[prop];
console.log("Result: " + userArrayGroups[prop] + "!=" + origArrayGroups[prop]);
}
else
{console.log("Result: " + userArrayGroups[prop] + "==" + origArrayGroups[prop]);}
}
console.log(diff);实际回报:
Object {b: "1002"} https://stackoverflow.com/questions/20094062
复制相似问题