Javascript:while循环无休止

tkl*_*ein 0 javascript while-loop do-while do-loops

我一直试图修复这个循环,但显然它无法识别输入是否正确.我在这里使用正确的循环吗?

var userChoice = prompt("Do you choose rock, paper or scissors?") 
if (userChoice !== "rock", "paper", "scissors") {
  do {
    prompt("Invalid answer. Please choose rock, paper or scissors.");
  } while (userChoice !== "rock", "paper", "scissors");
} else { 
Run Code Online (Sandbox Code Playgroud)

Ido*_*dos 6

这里有两个主要问题:

  • 另一种方法是使用`Array.indexOf`:`['rock','paper','scissors'] .indexOf('no')`(导致`-1`) (3认同)