js的閉包本質是能夠調用其他函數內部變量的函數。
形式上外部會返回內部函數,以便訪問內部變量。
基本模型:
function outer()
{
?var a=0;
?function inner()
?{
??a++;
??alert(a);
?}
return inner;?//返回調用
}
/*******************************/
var exe=outer();
exe();//1
exe();//2
/*******************************/
js產生的來源是函數的內部可以調用函數外部的全局變量,但外部無法調用函數內部變量,為了解決這個問題,引進了閉包機制,用return搭橋。
在以上實例中直接用outer調用內部a是不被允許的。