17370845950

js数组去重set
使用Set对象可高效去除数组重复元素,适用于基本数据类型,代码简洁且性能优越。示例:const uniqueArr = [...new Set([1, 2, 2, 3, 4, 4, 5])]; 结果为[1, 2, 3, 4, 5]。

JavaScript中使用Set对象对数组去重是一种简洁高效的方法。Set是ES6引入的数据结构,它只存储唯一值,因此可以自动去除重复项。

使用Set进行数组去重的基本方法

将数组传入Set构造函数,再用扩展运算符或Array.from()转回数组即可完成去重。

示例代码:

const arr = [1, 2, 2, 3, 4, 4, 5];
const uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // [1, 2, 3, 4, 5]

适用场景和注意事项

这种方法适用于基本数据类型(如number、string、boolean)的数组去重,处理起来非常方便。

  • 对于引用类型(如对象),Set会认为每个对象都是不同的,即使内容相同
  • NaN在Set中被视为相同值,会被去重
  • undefined和null也能被正确处理

与其他去重方法的比较

相比filter + indexOf或reduce等传统方法,Set方式代码更简洁,性能也更好,特别是在处理大数据量时优势明显。

基本上就这些,不复杂但容易忽略细节。