1.利用Set去重
function unique(arr){
return Array.from(new Set(arr))
}
⭐然而当有多个{}空对象时,无法去重
2.双重for循环,然后利用splice去重
function unique(arr){
let length = arr.length
for(let i=0; i<length;i++){
for(let j = i+1; j<length;j++){
if(arr[i] == arr[j]){
arr.splice(j,1)
j--
}
}
}
}
3.利用indexOf去重
function unique(arr){
let array = []
let length = arr.length
for(let i=0;i<length;i++){
if(array.indexOf(arr[i])===-1){
array.push(arr[i])
}
}
return array
}
4.利用filter
function unique(arr){
return arr.filter(function(item,index,arr){
// 0代表从头开始索引
return arr.indexOf(item,0) === index
})
}
5.利用includes
function unique(arr){
let array = []
let length = arr.length
for(let i=0; i < length; i++){
if(!array.includes(arr[i])){
array.push(arr[i])
}
}
}