<js>閉包

js的閉包本質是能夠調用其他函數內部變量的函數。

形式上外部會返回內部函數,以便訪問內部變量。

基本模型:

function outer()

{

?var a=0;

?function inner()

?{

??a++;

??alert(a);

?}

return inner;?//返回調用

}

/*******************************/

var exe=outer();

exe();//1

exe();//2

/*******************************/

js產生的來源是函數的內部可以調用函數外部的全局變量,但外部無法調用函數內部變量,為了解決這個問題,引進了閉包機制,用return搭橋。


在以上實例中直接用outer調用內部a是不被允許的。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 閉包(closure)是Javascript語言的一個難點,也是它的特色,很多高級應用都要依靠閉包實現。 一、變量...
    zock閱讀 1,079評論 2 6
  • 閉包: 官方”的解釋是:閉包是一個擁有許多變量和綁定了這些變量的環境的表達式(通常是一個函數),因而這些變量也是該...
    小裁縫sun閱讀 629評論 0 5
  • 閉包的理解 因為內部函數在被創建時,其作用域鏈對外部函數對應的變量對象存在一個引用,而JS采用引用計數的方法進行內...
    _士心_閱讀 113評論 0 0
  • 從赤鎮到薌城車站的車還要一個多小時才有,然而我已經不能等了,可是這個時候也沒有別的車了。 我打電話給苗天華。苗天華...
    浮生萬夢星耀燭天閱讀 244評論 0 1
  • 第一次使用簡書,試一下Markdown。![Hellow world] [id][id]: https://i.y...
    akak18183閱讀 333評論 0 0