数组去重的几种方法

var arr = [1,3,4,7,4,3,6,12,45,33];

1、数组的当前项和下一项比较,如果两者相同,删除其一

复制代码
arr.sort();
for(var i=0;i<arr.length;i++){
    if(arr[i] == arr[i+1]){
        arr.splice(i,1)
        i--
    }
}
console.log(arr)
复制代码

2、利用对象的key是唯一的进行操作

复制代码
var json = {};
var newArr = [];
for(var i=0;i<arr.length;i++){
    if(!json[arr[i]]){
        json[arr[i]] = true;
        newArr.push(arr[i]);
    }
}
console.log(newArr);
复制代码

3、利用indexOf操作

复制代码
var newArr = [];
for(var i=0;i<arr.length;i++){
    if(newArr.indexOf(arr[i]) == -1){
        newArr.push(arr[i]);
    }
}
console.log(newArr);
复制代码
原文地址:https://www.cnblogs.com/sexintercourse/p/14205274.html