什么事闭包?
闭包这个概念是js(javascript)中的,产生闭包的原因是当外部访问到function中的另一个内部function时就会产生一个闭包。
function a(){
var x=2;
function b(y){
alert(x+y);
}
return b(3);
}
var c=a();// 这里按道理来说a()方法已经运行完了,因该被回收才对,但是由于b()方法中还引用着x所以是不会被回收的。
c();// 这里运行的话不是a()方法,而是b()方法,因为a()方法是把b()方法作为返回值返回了
关于闭包的详细解释http://www.jb51.net/article/24101.htm
原文:http://www.cnblogs.com/mohehpc/p/6947598.html