var name = "The Window
";
var object = {
name : "My Object",
getNameFunc : function(){
return function(){
return this.name;
};
},
getName:function(){
alert(this.name);
}
};
alert(object.getNameFunc()()); //The Window
object.getName(); //My Object
因为
this
是在运行时才确定的,指向当前执行的上下文。object.getNameFunc()
返回了一个匿名函数:此时
this
指向全局对象window
,所以输出The Window
(window.name
).object.getName()
的上下文是object
,所以输出My Object
(object.name
).