Stuck Again... 8/9 Oops, try again. Your code returned 'paper wins' instead of 'undefined' when the inputs are scissors and paper


#1

Hi Guys, cant work this one out?
Oops, try again. Your code returned 'paper wins' instead of 'undefined' when the inputs are scissors and paper.
Code Below:

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 "paper wins";
}
}
else if(choice1 === "scissors") {
    if(choice2 === "paper") {
        return "scissors wins";
    }
else {
    return "rock wins";
}
}

};
compare(userChoice,computerChoice);

#2

you have an

else if (choice1=== "scissors";

section twice. Meaning your last 2 else if statements say the same thing. Deleting one and making sure that all your {}'s add up properly should fix the code


#3

i have removed the second else if as you recommended and double checked all of the {} but still getting the same result.

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 "paper wins";
}
}

};


#4

found it!

else if(choice1 === "scissors") {
    if (choice2 === "rock) {
        return "rock wins";
    }
    else {
    return "paper wins"; ///here is the problem. You're saying paper beats scissors!
    }
}
};

it should be "scissors wins"