Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 比较2个数组的不同结果_Javascript - Fatal编程技术网

Javascript 比较2个数组的不同结果

Javascript 比较2个数组的不同结果,javascript,Javascript,如何将2个阵列与当前结果进行比较: 只有a中的值不是b 只有b中的值不是a var a=[154043001567771563164959543927679253099354952759310935989025462310960882232537986783388623514543867207428376770914338878286259829751732190488329241185585735642885111844762380667550] var b=[3292414118259829

如何将2个阵列与当前结果进行比较:

  • 只有
    a
    中的值不是
    b

  • 只有
    b
    中的值不是
    a

    var a=[154043001567771563164959543927679253099354952759310935989025462310960882232537986783388623514543867207428376770914338878286259829751732190488329241185585735642885111844762380667550]

    var b=[32924141182598297517123]

  • 现行代码

    for (var i = 0; i < a.length; i++) {
        for (var j = 0; j < b.length; j++) {
            if (a[i] == b[j]) {
    
            }
            if(b[j] !== a[i]){
    
            }
        }
    }
    
    对于b-a,只需在示例中交换a和b。

    看看这个

    var resA = [];
    a.forEach(function(v,i){ if( b.indexOf(v) < 0) resA.push(v)});
    var resB = [];
    b.forEach(function(v,i){ if( a.indexOf(v) < 0) resB.push(v)});
    
    var resA=[];
    a、 forEach(函数(v,i){if(b.indexOf(v)<0)resA.push(v)});
    var resB=[];
    b、 forEach(函数(v,i){if(a.indexOf(v)<0)resB.push(v)});
    
    或者以更干净的方式使用过滤器

    var resA = a.filter(function(v){ if(b.indexOf(v) < 0) return v ; });
    var resB = b.filter(function(v){ if(a.indexOf(v) < 0) return v ; });
    
    var resA=a.filter(函数(v){if(b.indexOf(v)<0)返回v;});
    var resB=b.filter(函数(v){if(a.indexOf(v)<0)返回v;});
    
    你已经试过了吗???@Wand Maker已经试过了,结果是a和b的差异的组合,我需要明确的结果a没有b,b没有aSeems,就像每个人都在看不到我说的话就以负面评价跳跃一样。@Alex_TNT好的,我收回了我的投票。虽然我没有否决你的问题,但我有点理解为什么人们否决了你的问题-你需要什么还不太清楚-需要一个人把问题读两三遍才能弄清楚。请参考:给出简单的输入和期望值示例总是有帮助的output@WandMakerMaker第二条评论不是指你。这是一般性的。虽然我不知道如何才能更好地解释这一点,但我现在还不明白,这正是我所需要的。在abobe示例中,a-b长度是19,b-a长度是1如果我问你,你介意吗,如果我有这样一个数组
    {“firstName”:“John”,“lastName”:“Doe”}
    为了比较firstName和推送整个对象,代码将如何工作这是另一个问题。这些不是数组,而是对象。然后你可以遍历每个对象(map、foreach或for),创建两个包含你需要的新数组,或者你可以使用两个循环进行搜索谢谢你的解释,看来我又回到了原点,我需要对象内部的其他属性
    var resA = [];
    a.forEach(function(v,i){ if( b.indexOf(v) < 0) resA.push(v)});
    var resB = [];
    b.forEach(function(v,i){ if( a.indexOf(v) < 0) resB.push(v)});
    
    var resA = a.filter(function(v){ if(b.indexOf(v) < 0) return v ; });
    var resB = b.filter(function(v){ if(a.indexOf(v) < 0) return v ; });