首页 > 解决方案 > 我需要调试这个 JS 代码,但我不能

问题描述

我是编程初学者,无法调试此 JavaScript 代码。你能帮我一个忙并帮助我吗?谢谢

    <!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
<title>Question 7</title>
</head>
<body>
<script>
function redirect(){ 

var name = prompt("What's your name?");

if ((name == agnetha) || (name == bjorn) || (name == benny) || (name ==anni))
{
    window.location = "https://abbasite.com/";
} 
else 
{
    window.location = "https://www.thebeatles.com/";
}
}

</script>
<a href="#" onclick="redirect();">test script</a> 
</body>
</html>

标签: javascripthtml

解决方案


首先,您需要将要比较的值存储为字符串,方法是将每个值用引号 ( ' '/ " ") 括起来,然后您还应该===在 if 语句和其他比较(例如 switch 语句)中使用三等式()作为双等式测试或相似性并将两者转换为相同的类型,这可能会导致令人讨厌的故障

这是固定代码:

    <!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
<title>Question 7</title>
</head>
<body>
<script>
function redirect(){ 

var name = prompt("What's your name?");

if ((name === 'agnetha') || (name === 'bjorn') || (name === 'benny') || (name === 'anni'))
{
    window.location = "https://abbasite.com/";
} 
else 
{
    window.location = "https://www.thebeatles.com/";
}
}

</script>
<a href="#" onclick="redirect();">test script</a> 
</body>
</html>


推荐阅读