-
利用双层for循环,结合splice
思路:
1⃣️:依次取出数组中的每一项内容,但是不包含最后一项(因为最后一项后面没有内容了,不需要比较)
2⃣️:将拿出的每一项和当前项的后一项进行比较
3⃣️:如果发现有重复的,就把重复项删除,可以用splice方法let arr=[1,2,3,4,5,2,3,4] for(let i=0;i<arr.length-1;i++){ let item=arr[i]; for(let k=i+1;k<arr.length;k++){ if(item===arr[k]){ arr.splice(k,1) k--; } } } console.log(arr) =>[1,2,3,4,5]
缺点:如果数据量太大,非常耗性能,要循环很多次
-
es6新特性Set
let arr=[1,2,3,4,5,2,3,4] console.log(Array.from(new Set(arr))) =>[1, 2, 3, 4, 5]
-
利用indexOf
let arr=[1,2,3,4,5,2,3,4]; let arrList=[]; for(let i=0;i<arr.length;i++){ if(arrList.indexOf(arr[i])===-1){ arrList.push(arr[i]) } }
-
利用indexOf
数组去重的方法
最新推荐文章于 2023-12-11 17:34:47 发布