javascript 对比两个数组获取不同元素

两个数组找出相同的元素用for循环就可以执行,但要找出不同的元素,今天让我纠结了一下下。经过查找资料,写了如下的函数。

var onlineu = [10002,10003,10004,10001];
    var nowu = [10003,10004,10005];
    function getdiffarr(A,B){
        var C = new Array();
        var D = new Array();
        var E = new Array();
        var Astr = ","+ A.toString() +",";
        var Bstr = ","+ B.toString() +",";
        for(var i in A ){
            if(Bstr.indexOf(","+A[i]+",") >=0){

            }else{
                C.push(A[i]);
            }
        }
        for(var p in B){
            if(Astr.indexOf(","+B[p]+",") >=0){

            }else{
                D.push(B[p]);
            }
        }
        E.push(C);
        E.push(D);
        return E;
    }

    var F = getdiffarr(onlineu,nowu);
    for(var j in F)
        alert(F[j].toString());

具体实际应用场景具体对待。




你可能感兴趣的:(jquery)