let set = new Set(['red', 'green', 'blue']);
for (let item of set.keys()) {
console.log(item);
}
// red
// green
// blue
for (let item of set.values()) {
console.log(item);
}
// red
// green
// blue
for (let item of set.entries()) {
console.log(item);
}
// ["red", "red"]
// ["green", "green"]
// ["blue", "blue"]
let v = new Date()
typeof v
// "object"
a.set(v,1)
// WeakMap(1) { Date Wed Nov 03 2021 15:24:35 GMT+0800 (中国标准时间) → "123"}
a.set(1,1)
// TypeError: WeakMap key must be an object, got 1
let p1 = document.getElementById("#p1")
let p2 = document.getElementById("#p2")
let obj = {p1: 1, p2: 2}
// 需要手动删除,否则会该对象不会被回收
delete obj.p1 ;
delete obj.p2 ;
let p1 = document.getElementById("#p1")
let map = new WeakMap()
map.set(p1,"p1节点")
map.get(p1) // p1节点
// 无需手动删除,下次垃圾回收时会自动回收