欢迎来到博客园~~~

写出js内存泄漏的问题?

回答一:

(1)IE7/8 DOM对象或者Active对象循环引用导致内存泄漏

  a、多个对象循环引用

  b、循环的DOM泄漏

(2)基础的DOM泄漏

  当原有的DOM被移除时,子节点引用没有被移除则无法回收

(3)timer定时器泄漏

  这个时候你无法回收buggy object,解决办法,先停止timer然后再回收

 

回答二:

  内存泄露指任何对象在您不再拥有或需要它之后仍然存在

  垃圾回收器定期扫描对象,并计算引用了每个对象的其他对象的数量。如果一个对象的引用数量为0 (没有其他对象引用过该对象),或对该对象的唯一引用是循环的,那么该对象的内存即可回收

  setTimeout的第一个参数使用字符串而非函数的话,会引发内存泄漏

  闭包、控制台日志、循环(在两个对象彼此引用且彼此保留时,就会产生一个循环)也会引发内存泄漏问题

posted @ 2019-04-29 21:08  孙~洋  阅读(83)  评论(0编辑  收藏  举报