Javascript 石头剪刀-如何存储用户选择并将其与cpu选择进行比较

Javascript 石头剪刀-如何存储用户选择并将其与cpu选择进行比较,javascript,Javascript,到目前为止,我创建了click事件,控制台记录用户选择的内容,以及一个随机函数,控制台记录计算机选择的内容。我不知道如何存储用户选择,以便与CPU选择的内容进行比较 我考虑过使用if语句 if(randomNumber===1&&假设用户选择了rock){ 警惕(“这是一个平局”) } 等等 我将为每个场景创建一个if语句,然后对结果发出警报。我知道我会重复我自己的话,但现在我更容易创造一些我理解的东西。我想知道的是如何创建“假设用户选择了rock”部分。我考虑过创建一个变量userChoice

到目前为止,我创建了click事件,控制台记录用户选择的内容,以及一个随机函数,控制台记录计算机选择的内容。我不知道如何存储用户选择,以便与CPU选择的内容进行比较

我考虑过使用if语句

if(randomNumber===1&&假设用户选择了rock){

警惕(“这是一个平局”)

}

等等

我将为每个场景创建一个if语句,然后对结果发出警报。我知道我会重复我自己的话,但现在我更容易创造一些我理解的东西。我想知道的是如何创建“假设用户选择了rock”部分。我考虑过创建一个变量userChoice,但我不确定如何将它与用户所做的选择联系起来。我知道this.innerHTML,但我不确定它是否可以在这里使用

// User Choice
var rockUser = document.querySelector("#rock");

var paperUser = document.querySelector("#paper");

var scissorsUser = document.querySelector("#scissors");

var userChoice; 

rockUser.addEventListener("click", function() {
  console.log("You chose Rock!");
})

paperUser.addEventListener("click", function() {
  console.log("You chose Paper!");
})

scissorsUser.addEventListener("click", function() {
  console.log("You chose Scissors!");
})

// CPU Choice
let randomNumber = Math.floor(Math.random() *3) +1;

if(randomNumber == 1) {
console.log("CPU chose Rock!");
} else if(randomNumber == 2 ) {
console.log("CPU chose Paper!");
} else if(randomNumber == 3) {
console.log("CPU chose Scissors");
}

//Comparing the two

您可以创建类似以下内容的通用函数:

在HTML中,定义一个空标记

<div id="computerChoice"></div>

您可以创建类似以下内容的通用函数:

在HTML中,定义一个空标记

<div id="computerChoice"></div>


当你说“将它与用户所做的选择联系起来”是什么意思?你想在UI中显示他是否赢了/输了吗?当你说“将它与用户所做的选择联系起来”是什么意思?你想在UI中显示他是否赢了/输了吗?
const Enum = {
    ROCK: 0,
    PAPER: 1,
    SCISSORS: 2,
    LIZARD: 3,
    SPOCK: 4,
};

const Names = [
    'Rock',
    'Paper',
    'Scissors',
    'Lizard',
    'Spock',
];

const Winner = {
    NOBODY: 0,
    ONE: 1,
    TWO: 2,
};

const WinnerNames = [
    'Nobody',
    'You',
    'Bot',
];

function oneOrTwo(one, two) {
    const match = [
        (two === Enum.PAPER) + (two === Enum.SPOCK),
        (two === Enum.SCISSORS) + (two === Enum.LIZARD),
        (two === Enum.ROCK) + (two === Enum.SPOCK),
        (two === Enum.ROCK) + (two === Enum.SCISSORS),
        (two === Enum.PAPER) + (two === Enum.LIZARD),
    ];
    return match[one] + Winner.ONE - (one === two);
}

rockUser.addEventListener("click", function() {
  const botChose = Math.round(Math.random() * 4);
  console.log("You chose Rock, Bot chose " + Names[botChose]);
  console.log("Winner is : " + WinnerNames[oneOrTwo(Enum.ROCK, botChose)]);
})

paperUser.addEventListener("click", function() {
  const botChose = Math.round(Math.random() * 4);
  console.log("You chose Paper, Bot chose " + Names[botChose]);
  console.log("Winner is : " + WinnerNames[oneOrTwo(Enum.PAPER, botChose)]);
})

scissorsUser.addEventListener("click", function() {
  const botChose = Math.round(Math.random() * 4);
  console.log("You chose Scissors, Bot chose " + Names[botChose]);
  console.log("Winner is : " + WinnerNames[oneOrTwo(Enum.SCISSORS, botChose)]);
})