我在哪里放回.toLowerCase();在这个程序中,即使我放置EXIT

时间:2017-02-27 00:46:11

标签: javascript html loops exit lowercase

我试图这样做,以便即使有人进入EXIT ExIt,EXit等,我也可以退出该程序。我尝试将它放在字符串开头的var输入的末尾。在"}中的字符串末尾,而#34;声明,它仍然没有让它工作。有谁知道我应该把它放在哪里?

<!DOCTYPE html>
<html>
<head>
<title>Project 1 – Michael Fiorello</title>
</head>
<body>
<h1>Robot Speak</h1>
<script>
    do{
    var input = prompt ("Please enter 1, 2, 3, or exit.");{
    if (input == "1")
         {
             alert ("THANKS!")
         }
    else if (input == "2")
        {
        alert ("COOL!")
        }
    else if (input == "3")
        {
        alert ("AWESOME!")  
        }
    else if (input == "exit")
        {
       alert ("Okay") 
        }
    else 
        {
        alert ("You need to enter something")
        console.warn("You need to enter something");
        }
        }
        }while(input != "exit")
</script>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

else if (input.toLowerCase() == "exit")
{
   alert ("Okay") 
}

正如评论中所指出的,如果用户取消提示,结果将为null。要抓住这种情况,你应该在来到我上面写的那行之前测试这个值

if (input == null){
    handleCancel();
}
...
else if (input.toLowerCase() == "exit")
{
   alert ("Okay") 
}

如果你想要&#34;退出&#34;并且当按程序终止时按下取消按钮,您开始测试该情况:

var goOn = true;

while(goOn){

    var input = prompt ("Please enter 1, 2, 3, or exit.");
    if (input == null || input == "exit")
    {
         goOn = false;
         // handle cancel
    }
    else if (input == "1")
         {
             alert ("THANKS!")
         }
    else if (input == "2")
         {
            alert ("COOL!")
         }
    else if (input == "3")
         {
             alert ("AWESOME!")  
         }
}

答案 1 :(得分:0)

在空检查后(即取消提示时)以及任何不区分大小写的比较时,可以调用

toLowerCase()

为了减少比较的数量,你也可以在达到所需的响应时使用一个中断的无限循环。

您还在提示后添加了一个额外的不需要的块。这可能会被删除。

while (true) {
    var input = prompt("Please enter 1, 2, 3, or exit.");
    if (input == null){
        // Handle failure to specify a value
    } else if (input == "1") {
        alert("THANKS!");
    } else if (input == "2") {
        alert("COOL!");
    } else if (input == "3") {
        alert("AWESOME!");
    } else if (input.toLowerCase() == "exit") {
        alert("Okay");
        break;
    } else {
        alert("something else");
        console.warn("You need to enter something");
    }
}