2014-09-03 79 views
2

我想了解更多OO JavaScript。我創造了這樣的事情:無法訪問JS對象中的值

var Player = { 
     player: $('#player'), 
     video: Player.player 
    }; 

    console.log(Player.video); 

console.log回報Uncaught TypeError: Cannot read property 'player' of undefined。我的錯誤在哪裏?

回答

2

您不能引用一個對象時初始化。 解釋和建議的解決方案發現here

顯示你可能想是這樣的:

var Player = new function() { 
    this.player = $('#player'); 
    this.video = this.player; 
}; 

console.log(Player.player); 
0

原因是Player在分配video屬性時尚未定義。

var Player = { 
    player: $('#player'), 
    video: Player.player //<- Player is not defined yet. You are defining it right now. 
}; 

嘗試創建對象之後設置video屬性:

var Player = { 
    player: $('#player')   
}; 
Player.video = Player.player; 

console.log(Player.video); 
+0

我試着寫'球員=新的對象()'開頭,但它並沒有幫助。 – 2014-09-03 11:15:16

+0

試試我剛剛寫過的解決方法。 – Claudix 2014-09-03 11:17:28

+0

姆姆。但!當我這樣做,然後定義'Player.video = Player.player.get(0)'時,它會返回錯誤。任何想法爲什麼? – 2014-09-03 11:20:43