JS高阶---闭包缺点(内存溢出与泄露)

【大纲】

  

【主体】

(1)闭包优缺点

1、延长局部变量的生命周期
2、外部访问函数内部变量

闭包的优点同时也是它的缺点,就是

(2)解决方案

1、能不用闭包就不用(很难做到,因为应用较多)
2、及时释放---通过null,将其设置为垃圾对象,利用垃圾回收机制回收

 如下所示,及时释放

(3)内存溢出与内存泄露

1、内存溢出

  

  验证:

  

  

  

   

   

2、内存泄露

  

注意:内存泄露--程序仍然可以正常运行
  但内存泄露过多,到达临界点时,更容易发生内存溢出

常见的内存泄露:

  1、意外的全局变量(隐式全局变量)

  

   2、没有及时清理的定时器或回调

  

   3、闭包

  

  即

   

  

.

原文地址:https://www.cnblogs.com/fightjianxian/p/11973015.html