其他分享
首页 > 其他分享> > 数组去重的多种方法

数组去重的多种方法

作者:互联网

var arr = [1,1,2,3,4,5,5,6,5]
var newArr = [];

1.双重循环去重+splice();

for (var i = 1; i < arr.length; i++) {
        for (var j = 0; j < i; j++) {
          if (arr[i] === arr[j]) {
            arr.splice(i, 1);
            i--;
          }
        }
      }
console.log(arr);//[1, 2, 3, 4, 5, 6]

2.使用Array.indexOf();

indexOf()方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1

 for(var i = 0;i< arr.length;i++) {
        if(newArr.indexOf(arr[i])===-1) {
            newArr.push(arr[i])
        }
    }
    console.log(newArr);//[1, 2, 3, 4, 5, 6]

3.使用Array.includes();

includes() 方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回false

for(var i = 0; i< arr.length; i++) {
        if(!newArr.includes(arr[i])) {
            newArr.push(arr[i]);
        }
    }
    console.log(newArr);//[1, 2, 3, 4, 5, 6]

4.使用Array.sort();

var arr = arr.sort(); //先排序
console.log(arr);//[1, 1, 2, 3, 4, 5, 5, 5, 6]
for(var i =1; i<arr.length+1;i++) {
    if(arr[i] !== arr[i-1]) {
       newArr.push(arr[i-1])
    }
}
console.log(newArr);// [1, 2, 3, 4, 5, 6]

标签:多种,arr,console,log,++,newArr,数组,var,方法
来源: https://blog.csdn.net/SUE_DONG/article/details/117429086