单元一之第三章内存堆栈相关的垃圾收集

45 阅读1分钟

问题

1.为什么需要内存堆栈相关的垃圾收集

  1. 内存不足并使系统崩溃 => js 为我们处理内存回收

2.什么时候回收垃圾

  1. 当一个变量或函数脱离了上下文,将不再被使用

3.垃圾收集发生在哪

  1. 发生在 Heap 中

  2. 有什么用

    1. 判断哪些东西可以安全地 heap 中删除哪些对象
  3. 雷达扫描

4.什么是内存泄漏

  1. 引用过去需要和使用的内存部分。当前不需要了,但是他的内存还没有返回到内存池中

5.导致内存泄漏的一些常见问题

  1. 全局变量(global var)
  2. 不删除不再需要的事件监听
  3. 清除事件间隔(TimeIntervals)

代码

let timeID = setInterval(function () {
  // 引用一些对象(有时候会运行一些动画)
}, 200);

// 清除事件器
clearInterval(timeID);