0
点赞
收藏
分享

微信扫一扫

js数组去重

霍华德 2022-04-13 阅读 135
javascript

1、new Set()     (es6新增)

let arr3 = [1,2,3]
let arr4 = arr.concat(4,5,arr)  // [1,2,3,4,5,1,2,3,4,5]
let arrset = new Set(arr4)
console.log(arrset,arr4)  // Set(5){1,2,3,4,5} (12)[1,2,3,4,5,4,5,1,2,3,4,5]

const arr5 = [...arrset]
console.log(arr5)  //  (5) [1, 2, 3, 4, 5]

2、includes()     (es7新增)

let arr6 = [1, 5, 3, 5, 1, 9, 6, 5, 7, 7, 2, 0]
let arr7 = []
for(var i = 0; i<=arr6.length-1; i++){
    console.log(arr7.includes(arr6[i]),arr6[i])
    arr7.includes(arr6[i]) ? null : arr7.push(arr6[i])
}
console.log(arr7)  // [1, 5, 3, 9, 6, 7, 2, 0]

 3、indexOf()

let arr6 = [1, 5, 3, 5, 1, 9, 6, 5, 7, 7, 2, 0]
let arr7 = []
for(var i = 0; i<=arr6.length-1; i++){
    console.log(arr7.includes(arr6[i]),arr6[i])
    arr7.indexOf(arr6[i]) == -1 ? arr7.push(arr6[i]) : null
}
console.log(arr7)   // (8) [1, 5, 3, 9, 6, 7, 2, 0]

 4、sort()

let arr6 = [1, 5, 3, 5, 1, 9, 6, 5, 7, 7, 2, 0]
let arr7 = []
arr6.sort();
arr6.filter((item,index)=>{
    index == 0 ? arr7.push(item) : item == arr6[index-1] ? null : arr7.push(item);
    return arr7;
})
console.log(arr7)   // (8) [0, 1, 2, 3, 5, 6, 7, 9]

5、for循环

let arr6 = [1, 5, 3, 5, 1, 9, 6, 5, 7, 7, 2, 0]
for(var i = 0; i<=arr6.length; i++){
    for(var j = i+1; j<=arr6.length; j++){
        if(arr6[i] == arr6[j]){
            arr6.splice(j,1);
        }
    }
}
console.log(arr6)  //(8) [1, 5, 3, 9, 6, 7, 2, 0]

 

举报

相关推荐

0 条评论