美文网首页
JS 数组对象去重

JS 数组对象去重

作者: Darling_Z | 来源:发表于2017-06-06 16:52 被阅读0次

    vararray= [

    {a:1,b:2,c:3,d:4},

    {a:11,b:22,c:333,d:44},

    {a:111,b:222,c:333,d:444},

    {a:11,b:22,c:33,d:44},

    {a:11,b:22,c:33,d:444}

    ];

    //将对象元素转换成字符串以作比较

    functionobj2key(obj,keys){

    varn=keys.length,

    key= [];

    while(n--){

    key.push(obj[keys[n]]);

    }

    returnkey.join('|');

    }

    //去重操作

    functionuniqeByKeys(array,keys){

    vararr= [];

    varhash= {};

    for(vari=0,j=array.length;i

    vark=obj2key(array[i],keys);

    if(!(kinhash)) {

    hash[k] =true;

    arr.push(array[i]);

    }

    }

    returnarr;

    }

    //复制代码

    //进行去重

    vararr=uniqeByKeys(array,['a','b']);

    console.log(JSON.stringify(arr))

    相关文章

      网友评论

          本文标题:JS 数组对象去重

          本文链接:https://www.haomeiwen.com/subject/zzfnfxtx.html