Result undefined but no error messages?


#1

Hi everyone, just started trying to learn Javascript and I'm having my first big problem.
I've been making the rock, paper, scissors game and I'm only the final steps but every time I input a move, the computers move displays as undefined although the website says I have finished correctly and prompts me to move on to the next level

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

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

console.log(compare(userChoice, computerChoice));

#2

you also get the undefined if you enter something valid? Or only something invalid?


#3

Hi,
1 - when defining computerChoice at the beginning you wrote Rock, Paper and Scissors instead of rock, paper, scissors - should you modify?
2- at the end, when calling the function, compare(userChoice, computerChoice) is enough; yet, using console.log still displays the results if:
3- you write rock, paper or scissors in the box ("codecademy.com says":...) occuring when you choose to save and submit answer.


#4

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.