首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >2 json阵列的jQuery比较及差异分析

2 json阵列的jQuery比较及差异分析
EN

Stack Overflow用户
提问于 2013-11-20 10:59:35
回答 1查看 7.1K关注 0票数 2

我有2个json数组,如下所示,稍后我将进行jQuery扩展。我想使用jQuery,只比较array1和array2中的所有元素(a,b),检查(a,b)是否存在于array2中,如果存在,则得到差异。

我尝试了下面的代码,但不知怎么的,我总是得到意外的控制台输出作为下面的实际返回。如有任何建议,我将不胜感激。

代码语言:javascript
复制
var array1 = {a: "AT", b: "1000"};
var array2 = {c: 0, d: 100, a: "AT", b: "1002"};
console.log($(array1).not(array2).get());

预期收益:

代码语言:javascript
复制
[Object]
    0: Object
    b: "1000"
    __proto__: Object
    length: 1
    __proto__: Array[0]

实际回报:

代码语言:javascript
复制
[Object]
    0: Object
    a: "AT"
    b: "1000"
    __proto__: Object
    length: 1
    __proto__: Array[0]
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-20 12:18:54

我已经参考了下面的链接,并相应地修改了给出的答案。修改后的答案如下。

参考资料:Compare two JSON arrays in JQuery or Javascript

修改后的答案:

代码语言: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);

实际回报:

代码语言:javascript
复制
Object {b: "1002"} 
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20094062

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档