博主:DongJiang
码龄:7年
等级:LV.22级
内容:316
今日访问:2312
访问总量:5936
博客简介:学习与分享
博客创建时间:2018-04-12
博客主页 立即前往
赞助位
成为赞助商

JS中数组去重的方法都有哪些?

来源: 2024-05-19 12:19:24 播报

1、使用 Set 去重(ES6 中最常用)

利用Set的唯一性特性,将数组转换为Set,然后转回数组。

也可以使用Set和Array.from():先使用Set去除重复,再通过Array.from()将Set转回数组。

2、使用 indexOf()

indexOf查找一个字符串中,第一次出现指定字符串的位置。

indexOf方法返回一个整数值,指出 string对象内子字符串的开始位置。如果没有找到该字符串则返回-1。

3、使用includes()方法

遍历原数组,检查每个元素是否已存在于新数组中,若未存在则加入。

该方法会找到某一数组是否包含某元素 返回一个布尔值,它也可以用来查询字符串中是否包含某一个元素 返回的也是一个布尔值。

4、使用双重for循环

通过两层循环比较,使用splice删除重复的元素。

5、使用单重for循环

遍历原数组,检查每个元素是否已存在于新数组中,若未存在则加入。

6、使用filter()方法

通过filter()方法过滤出数组中唯一的元素。

7、使用reduce()方法

通过reduce()方法遍历数组,将不重复的元素累加到新数组中。

reduce()方法不仅仅用于数组求和,还可以满足增删查改、去重、平铺数组等需求,当reduce()方法解决每层数组的迭代拼接时,就会起到去重的作用。

8、使用Map对象

创建一个空 Map 数据结构,遍历需要去重的数组,把数组的每一个元素作为 key 存到 Map 中。由于 Map 中不会出现相同的 key 值,所以最终得到的就是去重后的结果。通过Map的has()和get()方法判断键是否重复。

原文出处:
版权声明:本文来源地址若非本站均为转载,若侵害到您的权利,请及时联系我们,我们会在第一时间进行处理。