ES6 中的 Set 和 WeakSet 使用实例

什么是 Set 和 WeakSet

Set 和 WeakSet 是 ES6 中新增的两个集合类型,用于存储一组唯一的值。

Set 和 WeakSet 的区别在于,Set 存储的是对象的引用,而 WeakSet 存储的是对象的弱引用。

Set 的使用实例

创建 Set

可以使用 Set 构造函数来创建一个空的 Set:

也可以使用一个数组来初始化一个 Set:

添加元素

使用 add 方法来添加元素:

删除元素

使用 delete 方法来删除元素:

判断元素是否存在

使用 has 方法来判断元素是否存在:

获取元素个数

使用 size 属性来获取元素个数:

遍历元素

可以使用 for...of 循环来遍历 Set 中的元素:

将 Set 转换为数组

可以使用 Array.from 方法将 Set 转换为数组:

Set 的应用场景

Set 可以用来去重:

WeakSet 的使用实例

创建 WeakSet

可以使用 WeakSet 构造函数来创建一个空的 WeakSet:

添加元素

使用 add 方法来添加元素:

删除元素

使用 delete 方法来删除元素:

判断元素是否存在

由于 WeakSet 中存储的是对象的弱引用,因此无法判断元素是否存在。

WeakSet 的应用场景

WeakSet 可以用来存储对象的私有属性:

总结

Set 和 WeakSet 是 ES6 中新增的两个集合类型,用于存储一组唯一的值。Set 存储的是对象的引用,而 WeakSet 存储的是对象的弱引用。Set 可以用来去重,WeakSet 可以用来存储对象的私有属性。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/657ac2edd2f5e1655d539aff


纠错
反馈