javascript - es6 中 Map 和 WeakMap 集合的垃圾收集

标签 javascript dictionary garbage-collection ecmascript-6 weakmap

我正在阅读 WeakMap 的描述,它说:

In native WeakMaps, references to key objects are held "weakly", which means that they do not prevent garbage collection in case there would be no other reference to the object.

通过阅读本文,我的理解是 WeakMaps 用于您试图利用 JavaScript 垃圾回收的实例。我从根本上不理解的是我加粗的那行。

为什么在普通 Map 中,没有引用它们的对象不会被垃圾回收?这有什么好处,我是否必须从普通 map 中明确删除?

最佳答案

“为什么在普通 Map 中,没有引用的对象不会被垃圾回收?”因为 map 本身具有对该对象的引用。只要有引用,对象就不会被gced。 ——费利克斯·克林

关于javascript - es6 中 Map 和 WeakMap 集合的垃圾收集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34235357/

相关文章:

javascript - 如何使我的 JavaScript 代码无法被其他人使用?

python - 修改字典

json - POST 字典为 JSON

java - 为什么大的 HashMap 会导致 GC 停顿时间较长

Android:平板电脑Honey comb中出现内存不足异常

javascript - 模型创建新行而不是进行编辑

javascript - jQuery ul 事件目标 - 我可以找到实际上是事件目标的 li 吗?

c++ - 具有不同参数类型的回调和存储类型

Java 垃圾回收

javascript - 仅在 HTTP 中支持跨域请求 - 访问 Sencha Touch 示例