闭包
function myFn(){
var myNum = 10;
function showNum(){
return(myNum); //or alert
}
return showNum;
}
var callFn0 = myFn;
var callFn = myFn();
/*alert(callFn0); //function myFn(){...}
alert(callFn); //返回的showNum 即function showNum(){...}
alert(callFn0());*/ //同上
alert(callFn()); //执行showNum 即return(myNum); 即10
alert(myFn()()); //同上
简单理解:一层一层往外抛(return),通过这种方式向外传值,打破了局部变量的限制,但若意外使用 在ie中会导致内存泄漏问题