2011-09-11 18 views
1

可能重複:
How do JavaScript closures work?閉包如何工作?

function add(num){ 
    return function(num1){     
      return function(num2){      
       return num + num1 + num2; 
     }; 
    }; 
} 

var add5 = add(7)((7))((7)); 
console.log(add5); 

我已經嘗試了不少的JavaScript,因爲我試圖把握如何關閉工作。

但後來我已經試過這

var add5 = add(7)((7))((7)); 
console.log(add5); //result is 21 

我看到它的方式,是封閉的一種指針的外部函數或其父功能?

+0

用於封閉環境是一個包裹環境的延伸 – galchen

+0

可以讀取[標籤維基](http://stackoverflow.com/tags/closures/info)獲取有用的信息。 –

回答