javascript - 清除 map 是否有助于垃圾收集?

标签 javascript dictionary collections garbage-collection es6-map

我最近注意到我的同事倾向于在取消引用之前清除任何映射,例如在函数结束时。

他对此的论点是,这是垃圾收集的好做法,我很好奇这是真的还是过度优化的情况?

例子:

function useMap() {
  const map = new Map();
  // do stuff
  map.clear();
}

最佳答案

假设有问题的 javascript 运行时使用跟踪垃圾收集器(大多数使用),它将只访问并处理可从 GC 根访问的对象。由于 map 本身不可访问,因此 map 中是否仍有引用并不重要,它们将永远不会被访问。

请注意,C# 也有人问过类似的问题和 Java除其他外。底层机制非常相似,因此可以根据垃圾收集器理论以与语言无关的方式提出此类问题。

关于javascript - 清除 map 是否有助于垃圾收集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49517204/

相关文章:

javascript - JS : How to repeatedly reload page, 读取元素值,然后单击按钮

javascript - 在 Android 方向更改时调整 HTML 元素的大小

javascript - JQuery 切换函数在应该交替处理程序时隐藏

ios - tableView 数据源的字典

kotlin - Kotlin:断言不变性

java - 使用 Collections.min/max 查找多个最小值/最大值

javascript - 搜索字符串以查找数组中包含的字符串

C++ boost : Simple nested dictionary?

python - 如何定义和实现一个行为类似于 dict 构造函数/更新的函数

java - 如何在 Java 对象列表中搜索