js数组去重

2023-08-01  本文已影响0人  Allen6879
   let ar = [1,2,2,1,3,4,5];
    console.log(ar);
    // 1.set 属性
   
    console.log([...new Set(ar)])

    // 2.filter + indexOf
    let ar2 = ar.filter((el,i)=>{
        return ar.indexOf(el) == i
    })
    // 3、利用for 循环 搭配 indexOf 去重  新数组找不到追加
    let ar3 = [];
    for(let i=0; i<ar.length;i++){
        if(ar3.indexOf(ar[i]) == -1){
            ar3.push(ar[i])
        }
    }

    console.log(ar3)

      // 4、利用for 循环 搭配 indexOf 去重  旧数组找到追加
      let ar4 = [];
    for(let i=0; i<ar.length;i++){
        if(ar.indexOf(ar[i]) == i){
            ar4.push(ar[i])
        }
    }

    console.log(ar4)

    // 5、利用for 循环 搭配 includes 去重  新数组找不到追加
    let ar5 = [];
    for(let i=0; i<ar.length;i++){
        if(!ar5.includes(ar[i])){
            ar5.push(ar[i])
        }
    }

    console.log(ar5)

 
    //   6.双层For 循环
        function noRepeat(arr){
        for (var i = 0; i < arr.length; i++) {
            for (var j = 0; j < arr.length; j++) {
                if (arr[i] == arr[j] && i != j) { //将后面重复的数删掉
                    arr.splice(j, 1);
                    }
            }
            }
            return arr;
        }
上一篇下一篇

猜你喜欢

热点阅读