Javascript不会退出do while循环

时间:2014-09-18 10:30:35

标签: javascript

所以我正在制作基于浏览器的游戏。我希望它显示一个提示,如果输入了正确的答案,它只会转到下一位代码。然而,尽管答案正确,但提示会显示,卡在无限循环中。

这是代码。

do {
var cavalry = prompt("Now you need to deploy your troops. They wait for your command. First how shall you deploy your cavalry? -all left -all right -split evenly -stronger left -stronger right").toLowerCase();

switch(cavalry) {
    case 'all left':
        console.log("Your chose all left.");
        break;

    case 'all right':
        console.log("You chose all right.");
        break;

     case 'split evenly':
        console.log("You chose split evenly.");
        break;

    case 'stronger left':
        console.log("You chose stronger left.");
        break;

    case 'stronger right':
        console.log("You chose stronger right.");
        break;

    default:
        alert("That is not an option");
        console.log("Please choose one of the options.");
        break;
   }

}

while (cavalry!="all right" || cavalry!="all left" || cavalry!="stronger left" || cavalry!="stronger right" || cavalry!="split evenly"); 

2 个答案:

答案 0 :(得分:3)

cavalry!="all right" || cavalry!="all left"总是如此,因为它不能与两者相等。

我认为你的意思是cavalry!="all right" && cavalry!="all left" && ...

答案 1 :(得分:0)

如果我理解正确,如果用户输入了可接受的内容,你想要打开开关和while循环。你应该看看标签

How to break nested loops in javascript?