我正在学习在 JS 中使用对象文字,并且我试图通过同一对象中的另一个函数调用它来运行对象内部的一个函数。为什么从函数“init”调用函数“run”时它没有运行?
var runApp = {
init: function(){
this.run()
},
run: function() {
alert("It's running!");
}
};
我正在学习在 JS 中使用对象文字,并且我试图通过同一对象中的另一个函数调用它来运行对象内部的一个函数。为什么从函数“init”调用函数“run”时它没有运行?
var runApp = {
init: function(){
this.run()
},
run: function() {
alert("It's running!");
}
};
对象的属性没有什么神奇之处init
,你碰巧为它分配了一个函数。所以如果你不调用它,它就不会运行。在构造这样的对象字面量时,不会为您执行任何函数。
因此,您的代码变成了这样:
var runApp = {
init: function(){
this.run()
},
run: function() {
alert("It's running!");
}
};
// Now we call init
runApp.init();
你可以试试下面的代码。它应该工作:
var runApp = {
init: function(){
runApp.run()
},
run: function() {
alert("It's running!");
}
};