详细介绍 es6 Set 数据类型
ES6 Set 数据类型是一种新的数据结构,它类似于数组,但是成员的值都是唯一的,没有重复的值。Set 本身是一个构造函数,用来生成 Set 数据结构。
Set 的特点如下:
- Set 的成员都是唯一的,没有重复的值。
- Set 内部的成员是按照插入顺序排列的。
- Set 可以接受一个数组或者类数组作为参数进行初始化。
- Set 也可以接受一个具有 iterable 接口的其他数据结构作为参数进行初始化,如字符串、Map 等。
- Set 的方法有 add、delete、has、clear、size 等。
Set 的常用方法如下:
- add(value):向 Set 结构中添加一个值,返回 Set 结构本身。
- delete(value):删除 Set 结构中的一个值,返回一个布尔值,表示是否删除成功。
- has(value):返回一个布尔值,表示 Set 结构中是否包含某个值。
- clear():清空 Set 结构,没有返回值。
- size:返回 Set 结构的成员总数。
下面是使用 Set 的示例:
let set = new Set();
set.add(1);
set.add(2);
set.add(3);
console.log(set.size); // 输出 3
set.delete(2);
console.log(set.has(2)); // 输出 false
set.clear();
console.log(set.size); // 输出 0
除了常用的操作方法外,Set 还提供了一些高级的操作方法,如并集、交集、差集等。可以通过遍历 Set 结构来实现这些操作。
Set 的应用场景包括:
- 去除数组的重复成员。
- 判断两个数组是否有重复的成员。
- 数组的并集、交集、差集操作等。
需要注意的是,Set 内部使用 SameValueZero 算法来判断两个值是否相等,类似于 === 运算符,但是区别在于 NaN 等于自身,两个对象总是不相等的
原文地址: https://www.cveoy.top/t/topic/hPRs 著作权归作者所有。请勿转载和采集!