首页 新闻 会员 周边 捐助

javascript匿名函数和闭包有什么关系?

0
悬赏园豆:20 [已解决问题] 解决于 2013-07-10 10:25

js用了很久了,对于闭包理解还是非常模糊,各种播客没少看,可就是不太理解。

闭包我的理解就是外部可以调取到函数内部的私有变量,仅此而已。

(function(){

  //函数闭包
})()

看了司徒正美的博客,以上代码是一个闭包,让我摸不到头脑,它仅仅是一个匿名函数啊,怎么回合闭包扯上联系呢?他就是一个简简单单的函数啊。如下:

function a(){

   //函数闭包

}

a();

有哪个大侠帮小弟更好的解释一下,还有就是闭包能做什么普通函数不能干的事情呢?就是实际的应用了。

暮云影风的主页 暮云影风 | 初学一级 | 园豆:161
提问于:2013-07-08 15:15
< >
分享
最佳答案
0

闭包跟函数有关系,但是至于是不是匿名就都一样了

闭包说的形象一点就像是:

一个封闭的组织(函数),外人是不清楚里面的情况的(内部的方法或变量)

但是如果从这个组织里面跑出一个人来(暴露的接口或对象),那他就会知道这些(可以调用内部的方法或变量)。

收获园豆:20
TiestoRay | 小虾三级 |园豆:687 | 2013-07-08 16:13
其他回答(2)
0

匿名函数 与 闭包 一点关系都没有

闭包只是说当某个函数(A)在某个上下文(B)中被创建并返回给某个变量(C),我们在使用C时,A仍然可以使用B中的所有变量

Yu | 园豆:12990 (专家六级) | 2013-07-08 15:43
0

http://www.cnblogs.com/rainman/archive/2009/05/04/1448899.html

beixiao1909 | 园豆:150 (初学一级) | 2013-07-08 16:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册