好的内窗口对象,所以我想了解这个(没有双关语意),但显然不是。该关键字是一个构造函数
var Constructor = function() {
var internalFunction = function() {
return this === window;
};
this.myMethod = function() {
alert(internalFunction());
};
};
var myObj = new Constructor();
myObj.myMethod();
此提醒true
。为什么内部函数看不到this
作为对象?相反,我有myMethod
使用alert(internalFunction.call(this));
。
编辑:我一直在寻找一个解释,为什么this
以这种方式分配,而不是解决办法,如var self = this;
等很抱歉,如果我没有说清楚。
的答案,这个问题都没有使用'that'。我感觉被背叛了。 – hugomg
@missingno:我不喜欢'那个'。这是非描述性的。在我回答说,我自己的选择没有更好:) –
+1后来无意的双关语 – SMC