js数组去重方法
1.利用for循环和 indexOf 进行数组去重
var arr = [1,1,2,5,6,99,77,44,1,5]
var newArr = []
for(var i=0;i<arr.length;i++){
if(!newArr .includes(arr[i])){
newArr .push(arr[i])
}
}
console.log(newArr)
2.利用for循环和 includes 进行数组去重
var arr = [1,1,2,5,6,99,77,44,1,5]
var newArr = []
for(var i = 0;i<arr.length;i++){
if(newArr.indexOf(arr[i]) == -1){
newArr.push(arr[i])
}
}
console.log(newArr)
3.利用 filter 进行数组去重
var arr = [1,1,2,5,6,99,77,44,1,5]
var newArr = []
var newArr = arr.filter((item,index,arr)=>arr.indexOf(item) == index)
console.log(newArr)
4.利用es6语法中的Set方法
var arr = [1,1,2,5,6,99,77,44,1,5]
var newArr= [...new Set(arr)]
console.log(newArr)
5.利用对象的属性key的唯一性进行数组去重
var arr = [1,1,2,5,6,99,77,44,1,5]
var newArr =[]
var obj = {}
for(var i=0;i<arr.length;i++){
if( !obj[arr[i]] ){
obj[arr[i]] = 1
newArr .push(arr[i])
}
}
console.log(newArr)