1.es6新增set方法实现数组去重
var arr = [1,2,3,2,4,5,6,2]
let list = new Set (arr)
console.log([...list])
2.循环+splice方法
var arr = [1,2,3,2,4,5,6,2]
function fun(arr) {
for(var i=0;i<arr.length-1;i++){//循环每一项
for(var j=i+1;j<arr.length;j++){//循环最后一项
if (arr[i]===arr[j]) {//i=j 删除j
arr.splice(j,1)
j--;//解决塌陷
}
}
}
return arr
}
console.log(fun(arr))
3.利用递归去重
var arr = [1,2,3,2,4,5,6,2]
function fun(arr) {
var array= arr;
var len = array.length;
array.sort(function(a,b){ //排序后更加方便去重
return a - b;
})
function loop(index){
if(index >= 1){
if(array[index] === array[index-1]){
array.splice(index,1);
}
loop(index - 1); //递归loop,然后数组去重
}
}
loop(len-1);
return array;
}
console.log(fun(arr));
总结: