I’m a JavaScript beginner and was taking an online course from YouTube. https://www.youtube.com/watch?v=EerdGm-ehJQ&t=9176s (03:19:00)
I’m making a rock, paper, scissors game using Math.random. However, VS Code alerts the following messages:
- Cannot redeclare block-scoped variable ‘randomNumber’.
- Cannot redeclare block-scoped variable ‘computerMove’.
- Cannot redeclare block-scoped variable ‘result’.
Can anyone explain why this happens and what the solution is?
The code is below.
<!DOCTYPE html>
<html>
<head>
<title>Rock Paper Scissors</title>
</head>
<body>
<p>Rock Paper Scissors</p>
<button
onclick="
const randomNumber = Math.random();
let computerMove="";
if (randomNumber >= 0 && randomNumber < 1 / 3 )
{
computerMove="rock";
}
else if (randomNumber >= 1 / 3 && randomNumber < 2 / 3 )
{
computerMove="paper";
}
else if (randomNumber >= 2 / 3 && randomNumber < 1 )
{
computerMove="scissors";
}
let result="";
if (computerMove === 'rock'){
result="Tie.";
} else if (computerMove === 'paper' ) {
result="Lost.";
} else if (computerMove === 'scissors' ) {
result="You win.";
}
alert (` You picked rock. Computer picked ${computerMove}. ${result}.`)
"
>
Rock
</button>
<button
onclick="
const randomNumber2 = Math.random();
let computerMove="";
if (randomNumber2 >= 0 && randomNumber2 < 1 / 3 )
{
computerMove2 = 'rock';
}
else if (randomNumber2 >= 1 / 3 && randomNumber2 < 2 / 3 )
{
computerMove2 = 'paper';
}
else if (randomNumber2 >= 2 / 3 && randomNumber2 < 1 )
{
computerMove2 = 'scissors';
}
let result2 = '';
if (computerMove2 === 'rock'){
resul2 = 'You win.';
} else if (computerMove2 === 'paper' ) {
result2 = 'Tie.';
} else if (computerMove2 === 'scissors' ) {
result2 = 'You lose.';
}
alert (` You picked paper. Computer picked ${computerMove2}. ${result2}.`)
"
>
Paper
</button>
<button
onclick="
const randomNumber = Math.random();
let computerMove="";
if (randomNumber >= 0 && randomNumber < 1 / 3 )
{
computerMove="rock";
}
else if (randomNumber >= 1 / 3 && randomNumber < 2 / 3 )
{
computerMove="paper";
}
else if (randomNumber >= 2 / 3 && randomNumber < 1 )
{
computerMove="scissors";
}
let result="";
if (computerMove === 'rock'){
result="You lose.";
} else if (computerMove === 'paper' ) {
result="You win.";
} else if (computerMove === 'scissors' ) {
result="Tie.";
}
alert (` You picked scissors. Computer picked ${computerMove}. ${result}.`);
"
>
Scissors
</button>
<script></script>
</body>
</html>
You need to sign in to view this answers