定义在window上的全局变量不可回收
function fn(){ a = 10; //a 为全局变量不可回收 //window.a = 10 //实质}function fm(){ this.b = 20;}fm(); // this->window,window.b = 20如果必须使用全局变量来存储大量数据,那么要确保使用完以后把它设置为null或者重新定义。相关的,增加内存消耗的一个主要原因是缓存,所以缓存要有大小限制,注意缓存是无法被回收的。
在Chrome调试器上可以看到,不停的f10,代码一致循环执行,即使没有a节点,同样一直执行。无法被清除。
http://developer.51cto.com/art/201605/511624.htm
新闻热点
疑难解答