深刻理解Javascript閉包


 最近在網上查閱了很多Javascript閉包(closure)相關的資料,寫的大可能是很是的學術和專業。對於初學者來講別說理解閉包了,就連文字敘述都很難看懂。撰寫此文的目的就是用最通俗的文字揭開Javascript閉包的真實面目。
  1、什麼是閉包?
  「官方」的解釋是:所謂「閉包」,指的是一個擁有許多變量和綁定了這些變量的環境的表達式(一般是一個函數),於是這些變量也是該表達式的一部分。
  相信不多有人能直接看懂這句話,由於他描述的太學術。我想用如何在Javascript中建立一個閉包來告訴你什麼是閉包,由於跳過閉包的建立過程直接理解閉包的定義是很是困難的。看下面這段代碼:
    function a(){
      var i=0;
      function b(){
        alert(++i);
      }
      return b;
    }
    var c = a();
    c();
  這段代

相關文章
相關標籤/搜索