// WeakMap 结构和Map类似,但是接收的参数只能是对象(null除外);且没有垃圾回收机制
// WeakMap弱引用的只是键名,键值依然是正常引用
// WeakMap没有size属性,所以也不能进行遍历
let wm = new WeakMap()
// WeakSet.set(key,value) key需要是一个对象
wm.set({},{"name":"lisa"})
wm.set({name:1},11)
console.log(wm) // WeakMap {{…} => 11, {…} => {…}}
console.log(wm.size) // undefined
// 由于键名无法清除,WeakMap 只有四个方法可用 get() set() has() delete()