Help in debuggging 8/9!thanks a mil


#1

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

it says !SyntaxError: expected expression, got keyword 'else'!


#3

I've found http://esprima.org/demo/validate.html really useful, as it points out where your error is, making it easier to find typos.

In this case, the javascript is surprised by the "else" in line 14, meaning we should look there and at the lines above:

var compare = function(choice1, choice2){
    if (choice1 === choice2) {
        return "The result is a tie!";
    }
} 
    else if (choice1 === "rock"){

Check your brackets. You've already closed the function before starting a new line with "else if"


#4

aaagh i get it now. thanks mil!