C 知道
while(true){ let name = prompt('请输入用户名:') let password = prompt('请输入密码:') if(password == '123456' && name == admin){ alert('登陆成功') break }}当我给admin加上单引号变为字符串时 运行正常 可以弹出alert 但当admin不为字符串时 程序跳出循环但没有弹出alert是为什么啊各位
收起
f(password == '123456' && name ==admin){alert('登陆成功')break}name == admin 是判断两个值是否相等的没有加引号是 你是判断name的值是否等于amdin这个变量,但是admin这个变量的值你没有初始化,默认回事undefine所以就不会执行alert了但是你加了引号,就是name的值是否等于admin这个字符串,只要name的值时admin时就会执行alert了
懂了 谢谢!
还有我想问一下 这个程序是输入不对就一直弹出输入框 但我输入其他错误的值时输入框会一直弹出 但是当admin没被声明时 name==admin 输入admin 123456就不重复弹出输入框了 我输入错误值和没有声明admin不是应该都不满足if条件吗 为什么我前者重复弹出输入框而后者不弹出输入框了呢
输入不对一直弹出是因为 while的循环条件为true 他就会一直循环输入对之后的代码块里面有break是可以结束循环的
报告相同问题?
程序员都在用的中文IT技术交流社区
专业的中文 IT 技术社区,与千万技术人共成长
关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!