filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。item是当前元素的值,index是当前元素的索引值。indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。利用indexOf() 查询到数组的下标,看是否等于当前的下标,相等的话就返回,否则不返回值。
5、借助新数组 通过 indexOf 方法判断当前元素在数组中的索引,如果与循环的下标相等则添加到新数组中
6、利用双重for循环
7、利用includes实现数组去重
以上就是比较常用的七种方法了,有不懂的留言吧。
1.es6有了Set,可以通过成员唯一性去重
2.使用数组对象的lastIndexOf()方法。
(关于lastIndexOf():( https://www.jianshu.com/p/d75886bc6c75 )
3.定义新数组,存入原数组第一个元素,再将原数组元素和新数组元素比较,不同的继续push到新数组。
4.splice()方法从数组中添加/删除重复值。
5.使用includes()方法{ps:可搭配foreach()方法||filter()方法}。
6.采用indexOf()获取索引查询去重
7.利用对象属性存在与否判断,这个方法没什么意思,但是也可行
第一种 ES6 中new set
第二种 利用indexof
第三种 利用对象的key值唯一的特性
第四种 利用includes()
第五种 利用hasOwnProperty,返回的keys为字符串的形式
第六种 利用splice
第七种 利用filter和indexOf
第八种 利用两层for循环和break,第二层的j不能用let定义
第九种 扩展运算符(...)
第十种 利用reduce 和 includes,reduce中第一函数不能加{}
第十一种 利用filter和map数据结构去重