SyntaxError: expected expression, got keyword 'else'


#1


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

SyntaxError: expected expression, got keyword '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";}
} 
else if(choice1 === "paper") {
    if (choice2 === "scissors") {
        return "scissors wins";
 }
else {
    if(choice2 === rock){
        return "rock wins";
    }

i think its right but i dont know still learning  but the error message keeps coming up of else


#2

@microcoder41071,
Have a close look at

else if(choice1 === "paper"){
    if(choice2 === "rock"){
        return "paper wins";}
}

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

lol still dont understand ive been trying to workr it out for hours but i still dont get it plz give a littlemore help


#4

@microcoder41071,
You are getting lost in the curly-braclet-{ } Forest

With a curly-bracket-pair{ } you create a so-called code-block

Have a closer look at

•the build of the IF ELSE-IF statement structure as part of the compare FUNCTION-BODY


#5

/*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";
}
}

well i know that know but y is it keep sayin syntax eror else


#6

@microcoder41071,
With

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";
        }
    }
}  //<<< here you already closing the =compare= function !!!

you already closed the compare function....