从 JavaScript 数组中删除重复项的方法:使用 Set() 构造函数创建一个包含唯一元素的 Set 对象,然后将其转换为数组。使用 Array.from() 和 Set() 来结合这两个方法,实现相同的功能。利用 indexOf() 和 filter() 检查元素是否已存在,并过滤重复项。使用 forEach() 和 Set,将元素添加到集合中从而自动移除重复项。

如何从 JavaScript 数组中删除重复项
JavaScript 数组是一种有序集合,其中可以重复存储元素。当需要从数组中删除重复项时,有几种方法可以完成此操作。
方法 1:Set() 构造函数
Set() 构造函数创建一个 Set 对象,它是一个无序集合,其中只包含唯一的元素。我们可以利用此特性来从数组中移除重复项:
const arr = [1, 2, 3, 4, 5, 1, 2, 3]; const uniqueArr = [...new Set(arr)]; console.log(uniqueArr); // 输出:[1, 2, 3, 4, 5]
方法 2:Array.from() 和 Set()
我们可以结合 Array.from() 和 Set() 来实现相同的功能:
const arr = [1, 2, 3, 4, 5, 1, 2, 3]; const uniqueArr = Array.from(new Set(arr)); console.log(uniqueArr); // 输出:[1, 2, 3, 4, 5]
方法 3:使用 indexOf() 和 filter()
小麦企业网站展示系统介绍:一、安装使用将xiaomai.sql导入数据库二、后台登录后台帐号,密码默认都是admin,config.php 配置文件可根据自行需要修改,IP地址,数据库用户名,密码,及表名后台目录默认admin,支持自行任意修改目录名三、注意事项1 本源码完全免费,采用伪静态,减少不必要的源码重复,速度更快,支持二次开发。2、注明本程序编码为UTF8,如发生乱码,请注意修改编码3、
该方法利用 indexOf() 来检查元素是否已存在,并使用 filter() 来过滤重复项:
const arr = [1, 2, 3, 4, 5, 1, 2, 3]; const uniqueArr = arr.filter((item, index) => arr.indexOf(item) === index); console.log(uniqueArr); // 输出:[1, 2, 3, 4, 5]
方法 4:使用 forEach() 和 Set
此方法使用 forEach() 遍历数组,并使用 Set 将元素添加到集合中,从而自动移除重复项:
const arr = [1, 2, 3, 4, 5, 1, 2, 3]; const uniqueArr = new Set(); arr.forEach(item => uniqueArr.add(item)); console.log(Array.from(uniqueArr)); // 输出:[1, 2, 3, 4, 5]
选择哪种方法?
上述方法各有优缺点,具体使用哪种方法取决于以下因素:
- 性能: Set() 构造函数和 Array.from() + Set() 方法通常是最快的。
- 内存占用: Set() 构造函数和 forEach() + Set 方法占用内存稍多,因为它们需要创建中间集合。
- 易用性: Set() 构造函数的使用最简单,因为它是专门为创建唯一元素集合而设计的。









