我已經添加了今天發生的codeacademy錯誤的屏幕截圖。我試圖創建一個比較函數,它隨機選取0到1之間的數字(紙,剪刀或搖滾),輸入兩個選項並根據choice1與choice2的比較結果返回贏家。我遇到了用於javascript的比較函數的語法問題
,第一部分是註釋,但它說明了原來的紙剪刀石頭功能是如何構建
下面是代碼:
/*var userChoice = prompt("Do you choose rock, paper or scissors?");
var computerChoice = Math.random();
if (computerChoice < 0.34) {
computerChoice = "rock";
} else if(computerChoice <= 0.67) {
computerChoice = "paper";
} else {
computerChoice = "scissors";
}*/
var compare = function (choice1, choice2) {if (choice1 === choice2) return("The result is a tie!");
if (choice1 < 0.34)
if(choice2 ==="scissors");
return("rock wins");
} else if(choice2 ==="paper");{
return("paper wins");
};
};
它告訴我,還有別的一個意外標記上線15(其他如果行)
當我擦除else部分時,它給了我另一個語法錯誤,說明關於標記if的相同事情。我被困在我的語法的部分內容以及如何解決它。
與註釋掉的代碼比較找到額外的'semicolons'使用。 – sabithpocker
就像一個旁註:如果choice1是一個隨機挑選的數字,而choice2是「剪刀」,「搖滾」或「紙張」,那麼if語句if(choice1 === choice2)永遠不會是「true」。您應該選擇一種格式(0或1之間的數字或三個字符串中的一個),並以相同的格式將choice1和choice2傳遞給比較函數。 – basilikum
這是一個很好的觀點。我將來會小心的。謝謝 – user2430360