下面是閉包的一個簡單舉例。
example 1:
var setup = function(){
var count = 0;
return function(){
count += 1;
console.log(count);
};
}
var next = setup();
next();// line 1
next();// line 2
line 1 輸出 1, line 2 輸出 2 , 結果比較出乎平常的意料。因為在setup函數中產生了閉包。setup函數返回一個函數,同時返回的函數還引用外部函數的一個局部變量,那麼這個返回函數會一直擁有着對所引用變量的操作。