修改了好久,现在不管怎么输,应该都没有漏洞了吧?
来源:3-5 编程练习
Sherlock_bourne
2019-04-13 12:43:56
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>break和continue</title>
</head>
<body>
<script>
var pwd,pwdAgain;
//补充代码
pwd=prompt("请输入密码");
while(pwd==123456){
pwdAgain=prompt("密码正确,请再次输入密码");
if(pwdAgain==123456){
alert("密码正确,正在登陆");
break;
}else{
alert("密码不正确,请重新输入")
pwd=prompt("请输入密码");
}
}
while(pwd!=123456){
alert("密码不正确,请重新输入")
pwd=prompt("请输入密码");
if(pwd==123456){
pwdAgain=prompt("请再次输入密码");
if(pwdAgain==123456){
alert("密码正确,正在登陆");
break;
}else{
pwd=prompt("请输入密码");
}
}else{
alert("密码不正确,请重新输入")
pwd=prompt("请输入密码");
if(pwd==123456){
pwdAgain=prompt("请再次输入密码");
if(pwdAgain==123456){
alert("密码正确,正在登陆");
break;
}else{
pwd=prompt("请输入密码");
}
}
}
}
</script>
</body>
</html>2回答
同学,你好。你的代码写的太复杂了,按照你的写法的话,可能最终能实现的比较严谨,但是思路不清晰,不好维护,也非常消耗内存,自己也容易找不出问题。其实挺简单的,两个while循环就ok了, 给你一个参考的吧:
<script type="text/javascript">
var pwd, pwdAgain;
//补充代码
while (pwd != 123456) {
pwd = prompt("请输入密码");
}
while (pwd == 123456) {
pwdAgain = prompt("请再次输入密码");
if (pwdAgain == pwd) {
alert("两次输入的密码匹配");
break;
}
}
</script>不过你这样探索去实现是要表扬你一下的,相信你在实现的过程中也遇到了很多问题,解决了很多问题,收货了很多。
如果帮助到了你,欢迎采纳!
祝学习愉快!
Sherlock_bourne
提问者
2019-04-13
当第一次错,第二次对,第三次又错,第四次对,为什么这时候就不提醒“您的密码输入正确,正在登陆”了?如何解决?
相似问题