while循环时非法中断语句
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了while循环时非法中断语句相关的知识,希望对你有一定的参考价值。
很抱歉重复其他人的问题。我已经查看了这些答案,但仍在努力完成我所需要的。
我想继续尝试我的密码生成器功能,直到它给我一个带有符号,数字和大写字母的功能。
您能帮忙吗?
while (true)
let trialPassword = randomPassGen(10)
trialPassword.forEach((letter)=>
if (!upperLetters.includes(letter))
return
else if (!symbols.includes(letter))
return
else if (!numbers.includes(letter))
return
else
break
)
console.log(trialPassword)
答案
中断在forEach中不起作用。不抛出异常,您将无法停止forEach。
另一答案
如果您打算退出while循环,请使用变量作为标志,并在forEach循环中设置标志:
var keepgoing=true;
while (keepgoing)
let trialPassword = randomPassGen(10)
trialPassword.forEach((letter)=>
if (!upperLetters.includes(letter))
return
else if (!symbols.includes(letter))
return
else if (!numbers.includes(letter))
return
else
keepgoing=false;
)
console.log(trialPassword)
另外,if / else if链的编码风格也不佳,但这是另一个主题。
以上是关于while循环时非法中断语句的主要内容,如果未能解决你的问题,请参考以下文章