js 去掉数组对象中的重复对象

39 篇文章 1 订阅

https://www.cnblogs.com/gaoht/p/9850449.html

 

function deteleObject(obj) {

    var uniques = [];

    var stringify = {};

    for (var i = 0; i < obj.length; i++) {

        var keys = Object.keys(obj[i]);

        keys.sort(function(a, b) {

            return (Number(a) - Number(b));

        });

        var str = '';

        for (var j = 0; j < keys.length; j++) {

            str += JSON.stringify(keys[j]);

            str += JSON.stringify(obj[i][keys[j]]);

        }

        if (!stringify.hasOwnProperty(str)) {

            uniques.push(obj[i]);

            stringify[str] = true;

        }

    }

    uniques = uniques;

    return uniques;

}

 

var arr7 = [

    {a: 1, url: 2},

    {a: 1, url: 2},

    {a: 1, url: 2},

    {b: 1, url: 3},

    {a: 1, url: 2},

    {c: 1, url: 2},

    {a: 1, url: 2},

    {d: 1, url: 2}

]

 

console.log('7777:',this.deteleObject(arr7));

 

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值