js数组查找重复元素的几种方法

  • Post author:
  • Post category:其他


let arr1=[1, 2, 4, 4, 3, 3, 1, 5, 3]

1.filter

function duplicates(arr) {
      let temp=[]
arr.forEach(item=>{
 if(arr.indexOf(item) != arr.lastIndexOf(item) && temp.indexOf(item) == -1){
            temp.push(item);
        }
})
    return temp
}
duplicates([1, 2, 4, 4, 3, 3, 1, 5, 3])

2.用set

function duplicates(arr) {
    const setter = new Set();
    const temp = new Set();
    for (const item of arr) {
       if (setter.has(item)) {
           temp.add(item);
       }else {
           setter.add(item);
       }
    }
    return Array.from(temp);
}
duplicates(arr1).sort()



版权声明:本文为weixin_52494781原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。