码迷,mamicode.com
首页 > Web开发 > 详细

js比闭包

时间:2017-10-10 10:04:49      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:var   原因   也会   script   nbsp   执行   文献   变量   专业   

种专业文献上的“闭包”(closure)定义非常抽象,很难看懂。我的理解是,闭包就是能够读取其他函数内部变量的函数。因为b被a引用,a又被c引用,说以使得f1和f2不被gc回收,得以永久存在

 function f1(){

    n=999;

    function f2(){
      alert(n);
    }

    return f2;

  }

  var result=f1();

  result(); // 999

 Javascript的垃圾回收机制

在Javascript中,如果一个对象不再被引用,那么这个对象就会被GC回收。如果两个对象互相引用,而不再被第3者所引用,那么这两个互相引用的对象也会被回收。因为函数a被b引用,b又被a外的c引用,这就是为什么函数a执行后不会被回收的原因。

 

js比闭包

标签:var   原因   也会   script   nbsp   执行   文献   变量   专业   

原文地址:http://www.cnblogs.com/xbzy/p/7643945.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!