Javascript 如何将if-else语句转换为三元运算符
如何将以下javascript代码重写为ES6版本:Javascript 如何将if-else语句转换为三元运算符,javascript,ecmascript-6,ternary-operator,Javascript,Ecmascript 6,Ternary Operator,如何将以下javascript代码重写为ES6版本: if(allUser[currentUser]['email']==email){ if(allUser[currentUser]['password']==password){ isUserFound = true passwordCorrect = true break } else { isUserFound
if(allUser[currentUser]['email']==email){
if(allUser[currentUser]['password']==password){
isUserFound = true
passwordCorrect = true
break
} else {
isUserFound = true
passwordCorrect = false
break
}
} else {
isUserFound = false
}
这不是个好主意,如果使用
if
/else
,代码的可读性会更好。您可以简化为:
isUserFound = allUser[currentUser]['email'] === email;
passwordCorrect = isUserFound && allUser[currentUser]['password'] == password
如果您不知道,
break
对if
也没有影响,只对有作用,而和开关
什么是“ES6版本”?三元运算符从一开始就存在于该语言中。(foo['email']==email&&foo['password']==password)?isUserFound,passwordCorrect=true:isUserFound,passwordCorrect=false代码>另外,只是一个次要的offf主题注:请不要养成省略分号的习惯代码>从行尾开始,这只会带来麻烦。@Xufox感谢您指出拼写错误。为了帮助操作,三元语法:if\u求值块?真的?条件?块?或?另一个?三元?块?这里:否则?条件?块?或?另一个?三元?块?这里
@Rikin,你能帮我写那个代码吗?我假设中断
是在一个循环中。它表示currentUser
和isUserFound
,这意味着OP在多个用户之间循环以找到一个特定的用户。也许,这可以用find
编写,这可能就是OP对“ES6”的意思。