Javascript比较不使用提示,while循环,和!==

时间:2013-05-03 05:41:06

标签: javascript loops while-loop

我要做的是反复提示用户,直到收到其中一个接受的答案。很简单的东西。然而,while循环使得这非常奇怪和烦人。这就是我得到的:

var plrchoice=prompt("Would you like to choose Bulbasaur, Charmander, or Squirtle? (Use only lowercase characters)");
while(plrchoice!=="bulbasaur"||plrchoice!=="charmander"||plrchoice!=="squirtle"){
        plrchoice=prompt("Would you like to choose Bulbasaur, Charmander, or Squirtle?");
    }

这应该在理论上有效,但结果是无限的do / while,无论用户输入什么。在此先感谢:)

2 个答案:

答案 0 :(得分:3)

那些||应为&&

答案 1 :(得分:1)

如果您重写这样的代码,可能会更清楚:

var plrchoice = "";
while (!/^(bulbasaur|charmander|squirtle)$/i.test(plrchoice)) {
   plrchoice = 
     prompt("Would you like to choose Bulbasaur, Charmander, or Squirtle?");
}