1. 标记清除
js最常用的垃圾回收方式,当变量进入环境 (函数中声明一个变量)时,会将变量打上标记,,离开时打上离开环境标记,用什么方式打上标记不重要,任何方式都行,,也就是垃圾收集器在运行时会给储存在内存中的所有变量加上标记,,然后会去掉(环境中的变量以及被环境中的变量引用的变量 )的标记,然后 剩余还留有标记的会被视为准备删除的变量,因为环境中的变量已经无法访问到这些变量了,最后垃圾收集器完成内存清除工作,销毁带标记的值并回收它们所占用的内存空间。
当数据不再有用,将值设置为null 来释放其引用 是优化内存占用的最佳手动方式
2. 引用计数
*不太常见的垃圾收集策略
3. V8引擎的垃圾清理策略,分代垃圾回收
分为新生代和老生代