2014-09-21 94 views
1

請原諒我的javascript無知:爲什麼我不能在JavaScript中做這樣的事情?運行這個告訴我沒有定義Called。這些功能的順序當然不重要。爲什麼我不能從另一個對象內調用另一種方法

var myObj = { 
 
    theCaller: function() { 
 
    console.log('The Caller'); 
 
    theCalled(); 
 
    }, 
 

 
    theCalled: function() { 
 
    console.log("i was called"); 
 
    } 
 
} 
 

 
myObj.theCaller();

+6

使用this.theCalled() – dandavis 2014-09-21 03:02:34

+0

感謝dandavis。這是因爲JavaScript沒有塊範圍?此外,這是一個可以接受的方式,比如說構建一個對象,或者我使用面向對象的思想,當JavaScript有不同的方式做同樣的事情? – user1003295 2014-09-21 03:44:27

回答

1

添加 「這個」 你所撥打.theCalled()之前

var myObj = { 
 
    theCaller: function() { 
 
    alert('The Caller'); 
 
    this.theCalled(); 
 
    }, 
 
    theCalled: function() { 
 
    alert("i was called"); 
 
    } 
 
} 
 

 
myObj.theCaller();

相關問題