首页
学习
活动
专区
工具
TVP
发布

数组去重之ES6系方法

数组去重的方法最后一篇了,最后写两个ES6的方法。相对于之前的,那真是简单简单再简单了。但是!兼容性也是需要注意的一点!

1

第一个方法:set方法。直接开始,代码非常容易,老数组来一个。

vararr= [3,5,2,6,5,7];

接下来是一个新的小物种:

varnewObj=newSet(arr);

能看到,我们用一个新变量承接的是一个以前没见过的东西,它就是ES6新增数据结构Set。类似于数组,但是没有重复值。Set本身是一个构造函数,用来生成Set数据结构。长度用size表示,Set对象中的所有值都不会重复。

接着用from方法,参数传递对象,将对象转为数组。说白了就是把数组弄成对象,通过对象中值不会重复这一特型,达到对象中不重复的情况,再转成数组。

varnewArr= Array.from(newObj);

那么,我们可以简写以下,更省一点地方。

varnewArr= Array.from(newSet(arr));

写好啦,看看最终的完整版:

vararr= [3,5,2,6,5,7];

varnewArr= Array.from(newSet(arr));

console.log(newArr);

已经简单到一塌糊涂了,但还有简单的!

2

第二种方法拓展运算符法

扩展运算符是三个点(...)。将一个数组转为用逗号分隔的参数序列。它具有合并复制数组等功效,居家常备。

老数组来一个。

vararr= [3,5,2,6,5,7];

最后一句啦!

varnewArr = [...new Set(arr)];

完了,真完了,就这样,最后看看新数组就好了。你的编辑器里可能会报错,别害怕,就是这样写的。

好啦!年前的最后一篇技术文章啦!再写你们也不看啦,我也要大吃大喝啦!过年前再给大家拜年!

本微信号所有内容为前端客用户原创,前端客已获得独家授权,欢迎分享。

如有转载需求请留言征询,对于未经许可私自篡改内容、转载的行为我们保留追究维权的合法权利!

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180209G0T1B300?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券