Code works but I still get an error


#1


Hi,
my code seems to work, the console outputs the proper results but I keep getting an error message that I don't understand.



Error
"Oops, try again. Your code returned 'paper wins' instead of 'undefined' when the inputs are scissors and paper"
Uploading...

var userChoice = prompt("Do you choose rock, paper or scissors?");
var computerChoice = Math.random();
if (computerChoice <= 0.33) {
	computerChoice = "rock";
} else if(computerChoice >= 0.34 && computerChoice <= 0.67) {
	computerChoice = "paper";
} else if(computerChoice >= 0.68) {
	computerChoice = "scissors";
} 

console.log("Player: " + userChoice);
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";
        }
    }
}

compare(userChoice,computerChoice);


#2

okay, so here:

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

if else would run, this means choice1 is scissors and choice2 is paper. Paper beats scissors? That is a new rule for me :stuck_out_tongue:


#3

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

Paper wins??? That could not be right. Change it and you can go for more leesons


#4

derp, thanks guys. dumb of me


#5