9/9, inappropriate choice check not working


#1
    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 {"paper wins"}}
        
    else if (choice1 === "paper"){
        if (choice2 === "rock"){
            return "paper wins"}
        else {"scissors wins"}}
    
    else if (choice1 === "scissors"){
        if (choice2 === "paper"){
            return "scissors wins"}
        else {"rock wins"}}
        
    else (choice1 !== "rock" || choice1 !== "paper" || choice1 !== "scissors")
    {console.log("Please answer with either rock, paper, or scissors. It's case sensitive!")}}

Whenever I run this code, no matter if I answer with rock, paper, or scissors, I still get "Please answer with either rock, paper, or scissors. It's case sensitive!". What have I done wrong?


#2

@conmasterx is this your full code? Where do you call your compare function?


#3

instead of using choice1 !== you can simply go with

 else{
      return "Please answer with either rock, paper, or scissors. It's case sensitive!"
 }