春水漫煎茶 2022-04-27 02:36 采纳率: 45.5%
浏览 47
已结题

while循环中的alert不弹出

while(true){
let name = prompt('请输入用户名:')
let password = prompt('请输入密码:')
if(password == '123456' && name == admin){
alert('登陆成功')
break
}
}
当我给admin加上单引号变为字符串时 运行正常 可以弹出alert 但当admin不为字符串时 程序跳出循环但没有弹出alert是为什么啊各位

  • 写回答

5条回答 默认 最新

  • ✎﹏ℳ๓敬坤 2022-04-27 03:01
    关注

    f(password == '123456' && name ==admin){
    alert('登陆成功')
    break
    }
    name == admin 是判断两个值是否相等的
    没有加引号是 你是判断name的值是否等于amdin这个变量,但是admin这个变量的值你没有初始化,默认回事undefine所以就不会执行alert了
    但是你加了引号,就是name的值是否等于admin这个字符串,只要name的值时admin时就会执行alert了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    春水漫煎茶 2022-04-27 03:47

    懂了 谢谢!

    回复
    春水漫煎茶 2022-04-27 04:07

    还有我想问一下 这个程序是输入不对就一直弹出输入框 但我输入其他错误的值时输入框会一直弹出 但是当admin没被声明时 name==admin 输入admin 123456就不重复弹出输入框了 我输入错误值和没有声明admin不是应该都不满足if条件吗 为什么我前者重复弹出输入框而后者不弹出输入框了呢

    回复
    ✎﹏ℳ๓敬坤 回复 春水漫煎茶 2022-04-27 05:34

    输入不对一直弹出是因为 while的循环条件为true 他就会一直循环
    输入对之后的代码块里面有break是可以结束循环的

    回复
    展开全部6条评论
查看更多回答(4条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 5月4日
  • 已采纳回答 4月27日
  • 创建了问题 4月27日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部