我试图了解执行上下文、创建阶段和执行阶段。
我想知道,有人可以帮我理解为什么,
console.log(thisFunction.ojbect1);
返回 - '未定义'。
我会认为,在创建阶段之后,当变量被分配“未定义”时,执行阶段就会运行,然后变量会被对象填充。
那么为什么我得到'object1'的'undefined',而不是整个对象呢?
非常感谢。代码如下。
var thisFunction = function(){
var object1 = {
firstname: 'Mark',
printName: function(){
console.log(this.firstname);
}
};
object1.printName();
};
thisFunction();
console.log(thisFunction.object1);