2011-11-21 58 views
23

我正在學習在JS中使用對象文字,我試圖通過調用同一對象中的另一個函數來獲取對象內部的函數。爲什麼當函數「init」調用函數「run」時不運行?從一個對象內的函數調用函數(對象文字)

var runApp = { 

    init: function(){ 
     this.run() 
    }, 

    run: function() { 
      alert("It's running!"); 
    } 
}; 

回答

10

有什麼魔力對象的init財產,你碰巧分配功能。所以如果你不叫它,那它就不會運行。構建像這樣的對象字面量時,不會執行任何函數。

這樣,你的代碼變得這樣:

var runApp = { 
    init: function(){ 
     this.run() 
    }, 
    run: function() { 
     alert("It's running!"); 
    } 
}; 

// Now we call init 
runApp.init(); 
相關問題