ES6 WeakSet
WeakSet 类似 WeakMap,weak 表示弱映射,
value (弱弱地拿着)而且必须是对象,
意思是 key 不是正式引用,不会阻止垃圾回收,
但只要 key 存在就不会被垃圾回收机制销毁。
操作方法:
add(key)
|
添成员并返回Set本身
|
has(key)
|
通过 键 判断 成员 是否存在
|
delete(key)
|
通过 键 移除 成员
|
const obj1 = { name: "tom" }; const ws = new WeakSet(); const wm1 = ws.add(obj1); // 添加成员并返回WeakMap本身 console.log(ws, wm1); console.log(ws.has(obj1)); // 通过 键 判断 成员 是否存在 ws.delete(obj1) // 通过 键 移除 成员 console.log(ws);
WeakSet 与 Set
相同:不重复值
区别:WeakSet 的成员只能是对象,而Set是任意