【发布时间】:2016-12-16 10:23:19
【问题描述】:
var myObject = {
name: function() {
return "Michael";
}(),
age: 28,
sayName: function() {
alert(this.name + ":" + this.age);
}(),
specialFunction: function() {
myObject = this;
if (this == myObject) altert(console.log(this.sayName));
}
}()
};
我试图从同一对象中的其他方法调用对象的方法,但我只是得到undefined。
我认为允许内部作用域对象访问外部作用域对象,但这种情况忽略了该规则。
【问题讨论】:
-
“帮我弄清楚这段代码有什么问题” - 首先发布代码,而不是一些无格式的文本。
-
请参阅stackoverflow.com/help/formatting 格式化您的代码
-
欢迎来到 Stack Overflow!请拿起tour,环顾四周,并通读help center,尤其是How do I ask a good question? 和What topics can I ask about here?。从第二个链接:“要求家庭作业帮助的问题必须包括您迄今为止为解决问题所做的工作的摘要,以及您在解决问题时遇到的困难的描述。”您还必须提供您的问题作为文本,而不是作为图像。
-
首先,不要将所有代码放在一行中。一方面,将代码分成多行可以更轻松地缩小错误原因的范围,因为错误消息可以告诉您是哪一行导致了它。
标签: javascript javascript-objects