8. What if choice1 is scissors? -> SyntaxError: syntax error (Please Help!)


#1

https://www.codecademy.com/courses/javascript-beginner-en-Bthev-mskY8/1/4?curriculum_id=506324b3a7dffd00020bf661

I passed all the steps until the "choice1 is scissors" stage using the following format:
else if(choice1 === "---") {
if (choice2 === "---") {
return "--- wins";
}
else {
return "--- wins";
} }
For some reason I am unable to pass to the next stage even though the format is unchanged. I keep getting the message SyntaxError: syntax error. Can anybody help me understand why?

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";
    } console.log("Computer: " + computerChoice);
    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 { 
            return "scissors wins";
        }
    } };
    compare(userChoice,computerChoice);

#2

If I copy your code and

$ xsel -b > victoriashomb.js  # paste it to a file
$ node victoriashomb.js       # run the code with nodejs

Then I get the following output, which is a little more verbose:

/tmp/javascript/victoriashomb.js:29
     else if(choice1 === "scissors") { 
     ^^^^
SyntaxError: Unexpected token else

So if you run into similar errors keep in mind that other interpreters may offer better error messages. You can run it in your browser (it almost certainly has a js interpreter) or online or with nodejs, doesn't matter which as long as the error message gives a line number so you know where to look


#3

Thank you very much! I appreciate the advice, but I still don't understand how that "else" is incorrectly placed?


#4

Nevermind I got it. Thank you very much!


#5

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.