放在WeakMap中的对象都是弱引用,在实际应用的时候可以防止对象无法被回收
比如以下代码
let map = new Map();
let button = document.querySelector('#login');
map.set(button, {disabled: true});
这样会导致按钮的Dom无法回收
用WeakMap可以解决该问题
let weakMap = new WeakMap();
let button = document.querySelector('#login');
weakMap.set(button, {disabled: true});