总结下最近看的一篇有关JS垃圾回收的内容

这里主要讲堆的数据回收,先上图

总结下最近看的一篇有关JS垃圾回收的内容

除了图上内容还有一点就是不管什么类型的垃圾回收器,都是差不多的处理流程:

1.扫描标记活动对象与非活动对象

2.非活动对象回收

3.整理内存碎片

例如调用fn会创建一个arr数组,并return arr,回收器会标记为活动对象, 当fn()执行完毕获得返回结果后,会标记为非活动对象,回收器下一次运行就会删除arr,并回收arr所占用的内存空间

fn = ()=>{
  const arr = new Array(100) 
  return arr     
}

 

个人理解,欢迎指正

参考浏览器垃圾回收机制与内存泄漏分析,大佬写的很详细,还谈及了闭包、内存泄漏以及甄别内存泄漏的方法

上一篇:二:Auto.js脚本开发环境搭建


下一篇:针对m3u8视频加密的一些尝试