Javascript 为什么这样认为';对吗?

Javascript 为什么这样认为';对吗?,javascript,Javascript,我是js新手,我有这个非常简单的代码。这应该是一个登录,但它不起作用。我不需要任何让它变得更好的建议,我正计划在这开始起作用的时候这样做 <!DOCTYPE html> <head> Sign-in </head> <body> <script type="text/javascript"> var em = prompt("Enter E-mail Here:") if(em = "I hid this to

我是js新手,我有这个非常简单的代码。这应该是一个登录,但它不起作用。我不需要任何让它变得更好的建议,我正计划在这开始起作用的时候这样做

<!DOCTYPE html>
<head> Sign-in  </head>
<body>
<script type="text/javascript">
    var em = prompt("Enter E-mail Here:")
        if(em = "I hid this to prevent spam"){
            var pa = prompt("Enter Password Here:")
                if(pa = "jct28if5"){
                    alert("Welcome!")
                 }
                else{
                    alert("Incorrect password!")
        }
    }
        else {
            alert("Invalid e-mail!")
}
</script>
</body>
</html>

登录
var em=prompt(“在此处输入电子邮件:”)
if(em=“我隐藏此项以防止垃圾邮件”){
var pa=prompt(“在此处输入密码:”)
如果(pa=“jct28if5”){
警告(“欢迎!”)
}
否则{
警报(“密码不正确!”)
}
}
否则{
警报(“无效电子邮件!”)
}
它现在所做的是,不管怎样,它都认为使用了正确的电子邮件和密码。有人能帮忙吗?

修好了

var em = prompt("Enter E-mail Here:")
            if(em === "I hid this to prevent spam"){
                var pa = prompt("Enter Password Here:")
                    if(pa === "jct28if5"){
                        alert("Welcome!")
                     }
                    else{
                        alert("Incorrect password!")
            }
        }
            else {
                alert("Invalid e-mail!")
    }
在为变量赋值时使用单个=。比如var x=1。
但如果要检查相等性,请使用==。比如如果(x==1)

我已经把你的代码修改了一点。有些事情需要注意

您不能只将原始内容放入

您的密码位于页面的原始源代码中,因此任何人都可以查看页面源代码并查看正确的密码。那绝对是个可怕的设计。密码应该传递到服务器端,在那里检查密码的有效性

在类似C的编程语言(如Javascript)中,==测试等式并返回布尔值。=符号为变量赋值

<!DOCTYPE html>
<head>
<title>Sign-in
</title>
<script type="text/javascript">
    var em = prompt("Enter E-mail Here:")
        if(em == "I hid this to prevent spam"){
            var pa = prompt("Enter Password Here:")
                if(pa == "jct28if5"){
                    alert("Welcome!")
                 }
                else{
                    alert("Incorrect password!")
        }
    }
        else {
            alert("Invalid e-mail!")
}
</script>
</head>
<body>
</body>
</html>

登录
var em=prompt(“在此处输入电子邮件:”)
if(em==“我隐藏了它以防止垃圾邮件”){
var pa=prompt(“在此处输入密码:”)
如果(pa==“jct28if5”){
警告(“欢迎!”)
}
否则{
警报(“密码不正确!”)
}
}
否则{
警报(“无效电子邮件!”)
}
只需添加一项:

==检查值 ==检查值和类型

停用js或不支持它的人,如curl/wget和其他人,将不会因此而停止,除非你用js加载整个网站,搜索引擎可能不会索引内容


希望这有帮助。

如果(pa=“jct28if5”)
总是正确的。您需要使用比较运算符,而不是赋值。在条件中使用
=
,而不是
=
if(pa==“jct28if5”){
=应该是==或者===如果您在中检查代码,您将得到一个错误--“需要一个条件表达式,而看到的是赋值。”