JavaScript Else If语句

JavaScript Else If语句,javascript,Javascript,我做Codecademy是为了更好地理解JavaScript,它说我写的代码是错误的。但我不知道哪里出了问题。接下来的调试消息是: 缺少标识符,而是在语句前看到'else',缺少';' 这个问题在我写的时候经常出现,有人能告诉我调试消息的确切含义吗,这样我就不必爬回到你们这里了?哈哈。不管怎样,代码如下: var compare = function(choice1, choice2) { if (choice1 === choice2); return("The result

我做Codecademy是为了更好地理解JavaScript,它说我写的代码是错误的。但我不知道哪里出了问题。接下来的调试消息是:

缺少标识符,而是在语句前看到'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");
}
}
compare();

如果正确缩进代码,则很容易看到:

var compare = function(choice1, choice2) {
    if (choice1 === choice2);
    return("The result is a tie!");
}; // this ends the function, not the if!

else if(choice1 === "rock") {
    if(choice2 === "scissors") {
        return("rock wins");
    }
    else {
        return("paper wins");
    }
}
应该是

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");
        }
    }
}

compare();

我只能猜测这个函数应该是什么样子

您需要在您的if条件之后删除simicolon:
if(choice1==choice2){…[code在此]…}
return
不是一个函数。不要在返回值中加括号。我喜欢你的else,如果没有nowhere@cale_b是的,很明显,但我不想给初学者一个现成的答案,因为他们从中什么也学不到。不过,无效的语法(
if(choice1==choice2);
)@Johan介意解释一下它的错误吗?另外,我的答案不应该是最终的代码,而是强调问题。仍然是相同的问题。消息保持不变,并显示“SyntaxError意外标记Else”。