本文来自JavaScript高级程序设计(第四版)——前端红宝书
今天说一下js中的垃圾回收,垃圾回收就是确定哪个变量不会再使用,然后释放它占用的内存。这个过程是周期性的,即垃圾回收程序每隔一定时间(或者说在代码执行过程中某个预定的收集时间)就会自动运行。垃圾回收过程是一个近似且不完美的方案,因为某块内存是否还有用,属于“不可判定的”问题,意味着靠算法是解决不了的。在浏览器的发展史上,用到过两种主要的方法:标记清理 和 引用计数
let element = document.getElementById("some_element");
let myObject = new Object();
myObject.element = element;
element.someObject = myObject;
myObject.element = null;
element.someObject = null;