理解WeakMap

138 阅读1分钟

与Map的不同

  • 键只能是对象

  • 弱引用,不计入垃圾回收。键在其他地方的引用被释放后,占用的内存就会被垃圾回收机制释放。Weakmap 保存的这个键值对,也会自动消失。

  • 没有keys()、values()、entries()、clear()方法,也没有size属性,只有get()、set()、has()、delete()

作用

可以把dom相关的值存成dom为键的WeakMap,这样当dom删除后,该WeakMap也会消失,不存在内存泄漏的风险