Javascript 在IF语句中创建变量

Javascript 在IF语句中创建变量,javascript,Javascript,该代码应该将用户带到一个网站,但我不知道如何将变量放入if语句中。例如,在他们输入Can you go to之后,它将转到谷歌,如果他们输入Can you go to,它将转到雅虎 <script type="text/javascript"> var question=prompt ("Type in a question"); if (question==("Can you go to " /*a website*/ )){

该代码应该将用户带到一个网站,但我不知道如何将变量放入if语句中。例如,在他们输入Can you go to之后,它将转到谷歌,如果他们输入Can you go to,它将转到雅虎

<script type="text/javascript">
        var question=prompt ("Type in a question");
        if (question==("Can you go to " /*a website*/ )){
            window.location.href = /*the website that the person typed in after to*/;
        }
    }
</script>

当您希望将字符串与模式匹配或从中提取数据时,JavaScript中的最佳选择是。用于测试字符串是否符合所需的模式,并在同一检查中提取所需的数据,然后在作业中使用提取的URL。

当您要将字符串与模式匹配或从中提取数据时,JavaScript的最佳选择是。用于测试字符串是否符合要求的模式,并在同一检查中提取所需的数据,然后在作业中使用提取的URL。

这不是最好的方法,因为用户可以在提示下编写其他内容,而不是从Can you go开始

但您可以选择要访问的网站提示的答案:

var question = prompt("Which website to go to", "");
//first test if not empty:
if (question != null && question != "") {
    window.location.href = question;
}

显然,您应该测试它是否是一个有效的网站,等等。

这不是最好的方法,因为用户可以在提示下编写其他内容,而不是从Can you go开始

但您可以选择要访问的网站提示的答案:

var question = prompt("Which website to go to", "");
//first test if not empty:
if (question != null && question != "") {
    window.location.href = question;
}

显然,您应该测试它是否是有效的网站,等等。

您想要解析字符串并提取URL部分。此外,对原始字符串检查==也将失败,因为它将包含url,因此不匹配。脚本上还有一个额外的}

使用javascript函数.substrstart,length处理部分字符串,请参见

谨防此比较是区分大小写的,因此您可以考虑使用ToupPrase

在匹配时,使用不带长度的.substrstart使字符串的其余部分包含URL

<script type="text/javascript">
    var question=prompt("Type in a question");
    if (question.toUpperCase().substr(0,14)==("CAN YOU GO TO " /*a website*/ )){
        window.location.href = question.substr(14)/*the website that the person typed in after to*/;
    }
</script>

您希望解析字符串并提取URL部分。此外,对原始字符串检查==也将失败,因为它将包含url,因此不匹配。脚本上还有一个额外的}

使用javascript函数.substrstart,length处理部分字符串,请参见

谨防此比较是区分大小写的,因此您可以考虑使用ToupPrase

在匹配时,使用不带长度的.substrstart使字符串的其余部分包含URL

<script type="text/javascript">
    var question=prompt("Type in a question");
    if (question.toUpperCase().substr(0,14)==("CAN YOU GO TO " /*a website*/ )){
        window.location.href = question.substr(14)/*the website that the person typed in after to*/;
    }
</script>

正如Oleg所说,使用JavaScript的正则表达式。为了说明这一点,这是您使用正则表达式制作的示例:

<script type="text/javascript">
    var question=prompt ("Type in a question");
    var match = /^Can you go to (.*)/.exec(question);
    if (match) {
        window.location.href = match[1];
    }
</script>

正如Oleg所说,使用JavaScript的正则表达式。为了说明这一点,这是您使用正则表达式制作的示例:

<script type="text/javascript">
    var question=prompt ("Type in a question");
    var match = /^Can you go to (.*)/.exec(question);
    if (match) {
        window.location.href = match[1];
    }
</script>

我不明白,您想测试键入的内容是否是有效的url吗?athe if是不必要的,或者B if正在验证重定向,并且只有当它与if匹配时才会被重定向。。。在“b”的情况下,只要使用if question==你能去吗http://www.urlYouWantToAllowToBeRedirected.comI 不明白,是否要测试键入的内容是否是有效的url?a if不必要,B if正在验证重定向,并且只有当它与if匹配时才会被重定向。。。在“b”的情况下,只要使用if question==你能去吗http://www.urlYouWantToAllowToBeRedirected.comI 我试图创建一个AI,它可以回答你问它的任何问题,比如什么是3+3,它会回答,如果你让它去一个网站,它会回答。所以你的解决方案不起作用。我试图创建一个AI,它可以回答你问的任何问题,比如什么是3+3,它会回答,如果你告诉它去一个网站,它会回答。因此,您的解决方案将不起作用。