WeakSet() 构造函数创建 WeakSet 对象。
语法
new WeakSet()
new WeakSet(iterable)
[!NOTE]
WeakSet()构造函数只能使用new调用。不使用new而直接调用会抛出TypeError。
参数
iterable{{optional_inline}}- : 如果传入了一个可迭代对象,这个对象的所有元素都会被添加到新的
WeakSet对象中。null会被视为undefined。
- : 如果传入了一个可迭代对象,这个对象的所有元素都会被添加到新的
示例
使用 WeakSet 对象
const ws = new WeakSet();
const foo = {};
const bar = {};
ws.add(foo);
ws.add(bar);
ws.has(foo); // true
ws.has(bar); // true
ws.delete(foo); // 将 foo 从集合中移除
ws.has(foo); // false,foo 已经被移除
ws.has(bar); // true,bar 被保留
请注意 foo !== bar。它们是相似的对象,但它们不是同一个对象。因此,它们都会被添加到集合中。