400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

es6如何实现数组去重

这篇文章将为大家详细讲解有关es6如何实现数组去重,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

创新互联公司专业为企业提供三台网站建设、三台做网站、三台网站设计、三台网站制作等企业网站建设、网页设计与制作、三台企业网站模板建站服务,十多年三台做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

es6数组去重的方法:1、利用Set对象和数组的from方法,语法“Array.from(new Set(arr))”;2、利用Set和扩展运算符,语法“[...new Set(arr)]”;3、利用Map对象和数组的filter方法。

本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

第一种:利用Set对象和数组的Array.from方法

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

代码示例:

es6如何实现数组去重

打印运行后的结果

es6如何实现数组去重

简单来说,第二种方法比第一种还简单。同样来简单解释一下。

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

第二种:利用Set+扩展运算符 …

第三种办法可以说是更简单

const newArr = [...new Set(arr)];

代码示例:

es6如何实现数组去重

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

第三种: 利用Map对象和数组的filter方法

function unique(arr) {
    const res = new Map();
    return arr.filter((a) => !res.has(a) && res.set(a, 1))
}

代码示例:

es6如何实现数组去重


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

所以说,Map对象结合filter方法可以达到数组去重的效果~

关于“es6如何实现数组去重”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


网页题目:es6如何实现数组去重
文章源于:http://www.bluegullmedia.com/article/ispdic.html

其他资讯

让你的专属顾问为你服务

0.0829s