- 概念
闭包就是能够读取其他函数内部变量的函数。 - 如何从外部获取函数的内部的变量?
function f1(){
var n=999;
function f2(){
alert(n);
}
return f2;
}
var result=f1();
result(); // 999
把内部函数做为返回值。
- 闭包的用途。
1 .读取函数内部的变量。
2 .让内部函数的变量始终保存在内存中。
- 两个例子
var name = "The Window";
var object = {
name : "My Object",
getNameFunc : function(){
return function(){
return this.name;
};
}
};
alert(object.getNameFunc()()); //The Window
var name = "The Window";
var object = {
name : "My Object",
getNameFunc : function(){
var that = this;
return function(){
return that.name;
};
}
};
alert(object.getNameFunc()());
网友评论