WeakSet
使用该集合,可以实现和 set 一样的功能,不同的是:
它内部存储的对象地址不会影响垃圾回收。
只能添加对象。
不能遍历,没有size属性,没有forEach方法。
let obj = {
name: 1,
age: 2
}
// const s = new Set(); // Set(1) {{…}}
const s = new WeakSet(); // WeakSet {{…}}
s.add(obj);
obj = null;
console.log(s);
WeakMap
类似于 map 集合,不同的是:
它的键存储不会影响垃圾回收。
它的键只能是对象。
不能遍历(不是可迭代的对象),没有size属性,没有forEach方法。