看js闭包,有人出了这个问题, http://www.jb51.net/article/24101.htm 在这看到的,有兴趣的可以瞅瞅。
var name = "The Window";
var object = {
name : "My Object",
getNameFunc : function(){
return function(){
return this.name;
};
}
};
object.getNameFunc()();
这个结果是The Window,没怎么看明白
var name = "The Window"; var object = { name : "My Object", getNameFunc : function(){ return this.name; } }; object.getNameFunc()
这个打印出来是My Object
后来看了一下this的解释,匿名函数的执行对象都是window,而在第二个例子中getNameFunc的对象是object
所以打印出来的值不一样
感觉有点忽悠,因为例子这个跟闭包好像没什么关系。把this去了算是一个闭包例子。不知道我理解的对不对?