提问人:Raymond Sam Chia 提问时间:9/26/2023 更新时间:9/26/2023 访问量:29
如何在 Javascript 中进行 while 循环提示
How to while loop prompt in Javascript
问:
我正在用 javascript 制作剪刀、纸、石头游戏。我创建了 3 个函数。第一个 getComputerChoice() 是让计算机在这三者之间随机选择。第二个是 gameNow(),您可以在其中将计算机选择与用户的选择进行比较。最后,game() 是我想根据游戏回合循环 5 次的地方。
我遇到的问题是提示让用户选择一次选项并在接下来的 5 轮中使用它(例如,用户选择“摇滚”。它会自动将计算机选择与同一用户的输入进行比较。我希望用户能够在每一轮中选择他们的选择,但我的 while 循环不会提示下一轮。它只提示了一次。
这是我的代码:
let userChoice = prompt("Pick one, Paper-Scissors-Rock : ");
let userPick = userChoice.toLowerCase();
const maxRound = 5;
let gameRound = 1;
let getComputerChoice = () =>{
const choiceArr = ["scissors","paper","rock"];
let i = Math.floor(Math.random()*3);
return choiceArr[i]
}
let gameNow = (playerSelection,computerSelection) =>{
if (playerSelection == "rock" && computerSelection == "rock"){
alert("Tie!")
gameRound+=1
} else if (playerSelection == "paper" && computerSelection == "rock"){
alert("Paper beats Rock, You win!")
gameRound+=1
} else if(playerSelection == "scissors" && computerSelection == "rock"){
alert("Scissors lose to Rock, You lose!")
gameRound+=1
} else if (playerSelection == "rock" && computerSelection == "scissors"){
alert("Rock beats scissors, You win!")
gameRound+=1
} else if (playerSelection == "paper" && computerSelection == "scissors"){
alert("Scissors beats Paper, You lose!")
gameRound+=1
} else if(playerSelection == "scissors" && computerSelection == "scissors"){
alert("Tie!")
gameRound+=1
} else if (playerSelection == "rock" && computerSelection == "paper"){
alert("Paper beats rock, You lose!")
gameRound+=1
} else if (playerSelection == "paper" && computerSelection == "paper"){
alert("Tie!")
gameRound+=1
} else if(playerSelection == "scissors" && computerSelection == "paper"){
alert("Paper beats rock, You lose!")
gameRound+=1
} else {
alert("Have you entered the right choice?")
gameRound+=1
}
}
let game = () => {
while(gameRound<=maxRound){
gameNow(userPick,getComputerChoice())
}
}
game()
答: 暂无答案
评论
let userChoice = prompt("Pick one, Paper-Scissors-Rock : ");