WeakSet和Set类似,同样是元素不重复的集合,它们的区别是WeakSet内的元素必须是对象,不能是其它类型。
特性:
1.元素必须是对象。
添加一个number类型的元素。
const ws = new WeakSet()
ws.add(1)
结果是报类型错误。
TypeError: Invalid value used in weak set
添加一个对象。
const ws = new WeakSet()
var a = {p1:'1', p2:'2'}
ws.add(a)
console.log(ws.has(a));
添加OK,结果显示:
true
可以通过WeakSet的