我正在学习在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();
以这种方式调用函数是否是一种好的编程习惯?