根据数组中的对象元素去重

需求:将几个数组对象合并后,需要根据数组中的元素去重。

数组合并:

//合并两个数组

arr1.push(...arr2)

或者

var arr3 = arr1.concat(arr2)

根据数组中的元素去重代码如下:

<script type="text/javascript">
        var result = {provider:[{isAgree:"同意",userName:"zhang",remark:'ddddd'},{isAgree:"同意",userName:"zhang",remark:'ddddd'},{isAgree:"同意",userName:"李四",remark:'ddddd'},{isAgree:"不同意",userName:"zhang",remark:'ddddd'}],eng:[{isAgree:"同意",userName:"wang",remark:'222'},{isAgree:"同意",userName:"wang",remark:'ddddd'},{isAgree:"同意",userName:"wang",remark:'ddddd'},{isAgree:"不同意",userName:"wu",remark:'ddddd'}]}
        console.log(arrUnique(result.provider));
        console.log(arrUnique(result.eng));

        //根据数组中的对象元素去重
        function arrUnique(arr){
            // 第一层for用来控制循环的次数
            for(var i=0; i<arr.length; i++){
                //第二层for 用于控制与第一层比较的元素
                for(var j=i+1; j<arr.length; j++){
                    //如果相等
                    if(arr[i].isAgree == arr[j].isAgree && arr[i].userName == arr[j].userName){
                        //删除后面的 即第 j个位置上的元素  删除个数 1 个
                        arr.splice(j,1);
                        j--;
                    }
                }
            }
            return arr;
        }

    </script>

打印结果:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值