function f1()
{
var N = 0; // N是f1函數的局部變量
function f2() // f2是f1函數的內部函數,是閉包
{
N += 1; // 內部函數f2中使用了外部函數f1中的變量N
console.log(N);
}
return f2;
}
var result = f1();
result(); // 輸出1
result(); // 輸出2
result(); // 輸出3
function Product() {
var name;
this.setName = function(value) {
name = value;
};
this.getName = function() {
return name;
};
}
var p = new Product();
p.setName("Fundebug");
console.log(p.name); // 輸出undefined
console.log(p.getName()); // 輸出Fundebug