一、闭包
这是我们故意泄露出来以达到我们目的的一种方式。
二、意外的全局变量
例如:
function fn(){
let a=b=1;
}
因为赋值时从右往左开始计算,那么以上赋值可以理解为:let a=(b=1) ,因为b未声明,所以此时b成为了全局变量。
三、被遗忘的定时器
四、脱离DOM的引用
引用了已经卸载的DOM元素,该DOM元素会一直在内存当中。比如使用document.getElementByID获取到了DOM元素,但在随后的操作中,卸载了该DOM,那么DOM不会被释放。