我只想构建我的r / p / s游戏的前两个步骤,到目前为止这是我的编码。它给了我响应“语法错误:意外的令牌其他”,我不能为我的生活弄清楚为什么......
var compare = function (choice1, choice2) {
if (choice1===choice2) {
return "The result is a tie!";
}
else if (choice1 === "rock") {
if (choice2 === "scissors")
return "Rock wins";
} else {
return "Paper wins";
}
else if (choice1 === "paper") {
if (choice2 === "rock")
return "paper wins";
} else {
return "scissors wins";
}
}
答案 0 :(得分:1)
您使用纸张获胜部分关闭了主if / else链,我相信您打算将其他内容附加到内部if / else,如下所示。
在论文部分你有同样的事情,我也修复了那个实例。在这里,您应该可以添加最终的if(choice1 === "scissors")
细分。
var compare = function (choice1, choice2) {
if (choice1===choice2) {
return "The result is a tie!";
}
else if (choice1 === "rock") {
if (choice2 === "scissors") return "Rock wins";
else return "Paper Wins";
}
else if (choice1 === "paper") {
if (choice2 === "rock") return "Paper wins";
else return "Scissors wins";
}
}
答案 1 :(得分:1)
我为你解决了这个问题:
var compare = function (choice1, choice2) {
if (choice1===choice2) {
return "The result is a tie!";
}
else if (choice1 === "rock") {
if (choice2 === "scissors") {
return "Rock wins";
} else {
return "Paper wins";
}
}
else if (choice1 === "paper") {
if (choice2 === "rock") {
return "paper wins";
} else {
return "scissors wins";
}
}
}
答案 2 :(得分:1)
你有一堆ifs和elses!
我特别相信,你有if (choice2 === "scissors")
没有花括号,这很好,除非你用} else {
关闭了你从未打开过的括号。你应该正确地缩进,它会帮助你理解为什么你可能遇到问题。
var compare = function (choice1, choice2) {
if (choice1===choice2) {
return "The result is a tie!";
}
else if (choice1 === "rock") {
if (choice2 === "scissors"){
return "Rock wins";
} else {
return "Paper wins";
}
}
else if (choice1 === "paper") {
if (choice2 === "rock"){
return "paper wins";
} else {
return "scissors wins";
}
}
}
所以你可以看到,我添加{在任何'ifs'之后没有,然后加上两个}来关闭正确位置的那些。
答案 3 :(得分:-2)
else {
return "Paper wins";
}
else if (choice1 === "paper") {
如果做了别的话,你就不能做别的事了;
我没有给出完整的答案并强迫他学习条件而被否定了?