以下是我常用的2种数组去重的方式:
一. set()方法(不改变原数组,返回去重后的数组)-- 最简单常用
let array1 = ['1','2','3','1'] let array2 = new Set(array1) console.log(array2) //打印 ['1','2','3']
二. filter()方法结合 indexOf()方法来去重
注:filter()改变原数组,返回筛选后的数组;indexOf()不改变原数组,如果搜索到元素所在位置就返回所在位置索引,没有检索到就返回-1
let array1 = ['1','2','1','2','3'] let array2 = array1.filter((item , i , arr) => { return arr.indexOf(item) === i }) console.log(array1) //打印 ['1','2','3'] //indexOf()的使用,可以用于字符串也可以用于数组 let array3 = '你好呀' let array4 = array3.indexOf('好') let array5 = array3.indexOf('猪') console.log(array4,array3,array5) //打印 1 '你好呀' -1
文章介绍了两种在JavaScript中去除数组重复元素的方法:一是使用Set数据结构,二是结合filter和indexOf方法。Set方法保持元素顺序且不改变原数组,而filter+indexOf组合则会改变原数组。

被折叠的 条评论
为什么被折叠?



