数组去重
第一种
let list = [1,2,3,4,5,55,5,6,6,7]
list = Array.from(new set(list))
第三种
indexof
第一次循环 indexof为-1
把push进去
function a(arr){
let temp = [];
for(let i = 0;i<arr.length;i++){
if(temp.indexOf(arr[i])==-1){
temp.push(arr[i])
}
}
return temp
}
let list = [1,2,3,4,5,55,5,6,6,7]
a(list)
es6去重
reduce+includes
reduce((上一次值,当前值,index,数组)=>{
},100上一次值不设置就是数组的第一个值)
list.includes(12)如果数组包含12就返回true,否则false
let list = [1,2,3,4,5,55,5,6,6,7]
list.reduce((preval,curval,index,arr)=>{
return preval.includes(curval) ? peeval : [...preval,curval]
},[])
第四种
过滤 filter
let list = [1,2,3,4,5,55,5,6,6,7]
//arr原数组
list.filter(function (item,index,arr){
return arr.indexOf(item) == index
})
lastindexOf 返回最后一次出现的下标,也可以用这个方法来实现indexof的作用