I continue getting "SyntaxError: Unexpected token {"


#1

Hi all,

I'd appreciate help on #8 of the Rock, Paper, and Scissors exercise. I've reviewed previous answers and gone over my code multiple times (and after taking a break) yet I still get a token error. Thanks in advance!

I've generated the following:

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

    }
}

else if (choice1 === "scissors")  {

    if  (choice2 === "rock")    {

        return "rock wins";

    }

    else (choice2 === "paper")  {

        return "scissors wins";

    }
}

};


#2

@joshua174,

An ELSE does NOT take a condition !!!!!

Please read
http://www.codecademy.com/forum_questions/559dcb4be39efe550f00006b
and concentrate on:

  • the creation of the compare function
  • the truth-table
  • the build of the IF ELSE-IF statement structure as part of the compare FUNCTION-BODY
  • the execution of the compare function (keeping in mind that the return statement is used )

#3

Thanks, leonhard_wettengmx_n,

I'll look over your suggested material. I take it, then, that for this exercise we're to correct the code that CodeAcademy provides in step #9? Note how its ELSE includes a condition:

else if (choice1 === "scissors") {

    if  (choice2 === "rock")    {

        return "rock wins";

    }

    else (choice2 === "paper")  {

        return "scissors wins";

    }
}

Best, joshua174