WeakSet的使用
Set和WeakSet的区别是set内部建议存放数组,WeakSet内部建议存放引用类型(数组和对象)
虽然WeakSet内部建议存放对象,但是WeakSet初始化的时候也不能进行初始化赋值,必须使用add赋值
先来看set内部存放对象
再来看WeakSet
let setObj = new WeakSet() setObj.add({ "a":1, "b":2 }) console.log(setObj);
WeakSet是使用add方法进行的赋值,如果使用初始化赋值会报错
下面的代码会报错,不能初始化赋值对象
let setObj = new WeakSet({ "a":1, "b":2 }) console.log(setObj);
WeakSet的方法
WeakSet也是用add进行赋值的,但是内部接收的是引用类性质,不能是基本类型值
下面的代码会报错
let setObj = new WeakSet() setObj.add('a') console.log(setObj)
使用引用类性质
let setObj = new WeakSet() setObj.add({ a:100 }) console.log(setObj)
注意:WeakSet没有size属性,也没有clear方法,也不能使用for..of进行遍历