爲什麼不能有這樣的事情:
/* This represents the current game, declare it upon starting a new game*/
var board = [['-','-','-'],['-','-','-'],['-','-','-']];
function notTaken(board,row,col) {
return (board[row][col] == '-');
}
function hasX(board,row,col) {
return (board[row][col] == 'x');
} // have a similar function for O
這消除了大量冗餘的代碼。另外,使用HTML5,您可以將自定義屬性添加到您的div元素中,該元素將指定單元格的行和列。因此,例如top-mid div將具有屬性「data-row」和「data-col」,值分別爲0和1。我認爲屬性名稱必須以「data-」開頭,但我不確定。
哦,還有一件事:永遠不要把布爾變成真或假,這是多餘的。而不是做:(!some_bool = FALSE) 只要做到: (some_bool)
由於布爾值只能是真或假的反正。同樣的: (some_bool == false) 可以寫成: !(some_bool)
希望這有助於。
如果你正在尋找提高代碼質量的一般,你可以去這裏:http://codereview.stackexchange.com/ – Ian
我建議你不要***寫你的id標籤,你的方式做('id =「something」')。正確的方法:'id =「something」'。 –