我正在爲合同橋的一個評分腳本,只是爲了咯咯地笑。我存儲遊戲作爲一個對象:動態添加成員到一個JavaScript對象
var game = {
team1 : { player1 : prompt("Team 1, first player: "), player2 : prompt("Team 1, second player:") },
team2 : { player1 : prompt("Team 2, first player: "), player2 : prompt("Team 2, second player:") },
}
function deal(bid){
console.log("The bid was " + bid);
game.hand = {"bid" : bid , "made" : undefined};
score();
}
所以我想,雖然做了什麼,比這更好的,是爲了保持遊戲的歷史中扮演本次會議。我想,在僞代碼,做這樣的事情:
game.(hand + (hand.length+1))
或東西喜歡這樣;基本上自動遞增對象內的某個對象。我不確定陣列會在這裏,但也許?我願意接受建議/改進我的代碼。
PS - 我寧願在javascript中執行此操作,而不是jQuery,Prototype,Dojo,MooTools ...或任何其他庫。謝謝!
編輯
對不起,讓我澄清:打3手左右之後的結果會是這樣一個對象:
var game = {
team1 : { player1 : prompt("Team 1, first player: "), player2 : prompt("Team 1, second player:") },
team2 : { player1 : prompt("Team 2, first player: "), player2 : prompt("Team 2, second player:") },
hand1 : { bid : 2 , made : 2 } ,
hand2 : { bid : 1 , made : 4 } ,
hand3 : { bid : 3 , made : 1 } ,
hand4 : { bid : 2 , //and made hasn't been set yet because we're mid-hand
}
不,你是對的,把它放在方括號中得到它評估,或將其保存爲「富」,然後「OBJ [富] =的方式.. 。'如果它超過幾個字符就可以使用它。 – 2011-11-30 19:13:08