首页 > 其他 > 详细

闭包的使用场景

时间:2016-05-19 10:39:21      阅读:156      评论:0      收藏:0      [点我收藏+]

一般情况下,不要用闭包,除非你真正需要它。

什么是闭包?

js高级程序设计给出的定义是:有权访问另一个函数作用域中变量的函数。

怎么创建闭包呢?

function foo(){
   var a=0;
   function bar(); 
   }
   return bar;
}

var c=foo();
c();    

全局变量c指定对函数foo的内部函数bar的引用;内部函数bar的执行需要依赖函数foo的资源;

这里就产生了一个闭包,使得a在执行完毕后并返回,不会被JavaScript垃圾回收机制GC回收。

因为这里c还在引用这bar,而bar依赖着foo,故foo在使用后,仍然存在于内存中。 

闭包的使用场景

原文:http://www.cnblogs.com/WaTa/p/5507713.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!