两种垃圾回收机制:
1.标记清除
当变量离开运行环境,就标记为可清除
2.引用计数
跟踪每个值被引用的次数
引用次数为0的时候,作为垃圾回收
可能会出现,循环引用问题,把a赋给b,b再将值赋给a
BOM和DOM的垃圾回收机制是引用计数,防止出现循环引用,结束使用的时候,需要解除引用。
将变量值
等于null
就解除了变量与变量之间的连接。
确保用最少的内存让页面呈现更好性能
- 全局变量和全局对象,使用null解除循环引用,进行垃圾回收
- 局部变量,离开运行环境就回收
V8中的垃圾回收算法:分带回收机制
老生代:采用Mark Sweap Mark Compact,存活周期较长
新生代:Scavenge/ˈskævɪndʒ/ 算法,存活周期较短