es6数组去重的方法(es6对象转数组)

es6数组去重的方法(es6对象转数组)

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

1

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

var arr = [3, 5, 2, 6, 5, 7];

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

var newObj = new Set(arr);

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

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

var newArr = Array.from(newObj);

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

var newArr = Array.from(new Set(arr));

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

var arr = [3, 5, 2, 6, 5, 7];var newArr = Array.from(new Set(arr));console.log(newArr);

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

2

第二种方法拓展运算符法

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

老数组来一个。

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

最后一句啦!

var newArr = […new Set(arr)];

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

今天小六分享的内容,各位前端客们get到了么?

前 端 客

简 单 高 效

qianduan_ke

发表评论

登录后才能评论