WeakSet的使用

WeakSet的使用

Set和WeakSet的区别是set内部建议存放数组,WeakSet内部建议存放引用类型(数组和对象)

虽然WeakSet内部建议存放对象,但是WeakSet初始化的时候也不能进行初始化赋值,必须使用add赋值

先来看set内部存放对象

WeakSet的使用

 

 

 再来看WeakSet

let setObj = new WeakSet()
setObj.add({
  "a":1,
  "b":2
})
console.log(setObj);

WeakSet的使用

 

 

 WeakSet是使用add方法进行的赋值,如果使用初始化赋值会报错

下面的代码会报错,不能初始化赋值对象

let setObj = new WeakSet({
  "a":1,
  "b":2
})

console.log(setObj);

WeakSet的使用

 

 

 WeakSet的方法

WeakSet也是用add进行赋值的,但是内部接收的是引用类性质,不能是基本类型值

下面的代码会报错

let setObj = new WeakSet()
setObj.add('a')
console.log(setObj)

WeakSet的使用

 

 

 使用引用类性质

let setObj = new WeakSet()
setObj.add({
  a:100
})
console.log(setObj)

WeakSet的使用

 

 注意:WeakSet没有size属性,也没有clear方法,也不能使用for..of进行遍历

 

上一篇:ES6之Set集合数据类型


下一篇:ES6 Set、WeakSet