<>ES6数组去重的三个简单办法

<>简单说一下利用ES6实现数组去重的三个办法。
<>第一种: 利用Map对象和数组的filter方法
贴上相关代码

打印后的结果

通过打印我们发现,确实实现了我们想要的效果。那么下面简单来解释一下。

1.Map对象是ES6提供的一个新的数据结构,其中has的办法是返回一个布尔值,表示某个值是否存在当前的Mp对象之中,set的办法是给Map对象设置key/value。
2.filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
所以说,Map对象结合filter方法可以达到数组去重的效果~
<>第二种:利用Set对象和数组的Array.from方法
同样贴上相关代码片段

打印运行后的结果

简单来说,第二种方法比第一种还简单。同样来简单解释一下。
1.Set是ES6新提供的数据结构,类似于数组,但是本身没有重复值。
2.Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象(包括
ES6 新增的数据结构 Set 和 Map)。

所以set结合Array.from同样可以达到数组去重的效果。不过需要注意的是,主流浏览器像Chrome,Firfox,Opera,Safari,包括微软的Edge,都是支持的,但是唯独IE系列不支持。

<>第三种:利用Set+扩展运算符 …

第三种办法可以说是更简单
贴上相关代码

打印后运行的结果

<>这就是利用ES6新特性达到数组去重的三种办法,这三种办法有个共同的好处就是代码简洁,对于undefined和NaN也同样可以达到去重的效果~~

<>如果你有其他办法也欢迎一起分享一下~

技术
©2020 ioDraw All rights reserved
【2020最牛小程序:你想要的各种资源都能搜的到?】C语言简易学生成绩管理系统运维工作梳理韭菜的愤怒:谷歌删除近10万条对Robinhood的负面评论Tampermonkey(油猴)的获取方法【技巧】简单几招解决Mac磁盘空间不足的问题惹什么猫都别惹熊猫!「功夫熊猫」20年对人类拿下4血为什么保持代码整洁如此重要?玩转指针重难点(1) 如何用SSL减少网站不必要的漏洞