私は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();