数组去重问题

数组去重问题的简便解决方法

var arr = [1,1,3,5,6,3,4,9]
        function noRepeat( arr ){
        //定义一个空数组 来装不重复的内容
            var no_repeat_arr = [];
            // 遍历原数组;
            for(var i = 0 ; i < arr.length ; i ++){
                // 判定:第一次执行,因为数组里是空的,所以直接放入;
                if( i === 0 ){
                    no_repeat_arr.push(arr[i]);
                    continue;
                }
                // 判定去重数组之中是否存在这个数据;
                // 使用 indexOf 去判定数据是否重复; 如果等于 -1 表示新数组之中没有该项数据;
                if(no_repeat_arr.indexOf(arr[i]) === -1){
                    no_repeat_arr.push(arr[i]);
                }
            }
            return no_repeat_arr
        }
        console.log(noRepeat(arr))

思路:编写一个函数,在里面先创建以个新的空数组用来装不重复的内容。
1.先遍历原数组 , 判定原数组的第一项肯定不是重复的,所以直接添加到新数组中
2.在判定新数组中有没有存在相同的元素(用indexOf()判定),如果有重复的数据返回的值是0,如果没有重复的数据返回的值为 -1 ;
3.所以 判定 当返回的值 等于 -1 的时候 ,继续将这个这个数据添加到 新数组中。
4.等原数组遍历完之后,返回新数组,这时候新数组中都是不重复的数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值