如何将带有嵌套if语句的if-else语句转换为一个三元语句
How can I turn an if-else statement with a nested if statement into one ternary statement?
这是我目前拥有的代码:
if (isStandard(statement)) {
if (isPerfect(statement)) {
alert("This is a perfect palindrome.");
} else {
alert("This is a standard palindrome.");
}
} else {
alert("The statement is not a palindrome.");
}
我希望能够将其转换为单个三元语句,其中alert()中的字符串将是返回的值。我知道如何为if-elseif-else语句执行此操作,但不知道如何为嵌套的if执行此操作。
如果您真的想要一个三元。。。
alert(
!isStandard(statement) ? "The statement is not a palindrome." :
isPerfect(statement) ? "This is a perfect palindrome." :
"This is a standard palindrome.");
请注意,在大多数情况下,代码可读性应该胜过简洁性。然而,我并不反对燕鸥,只要它们可读。不过,我个人不喜欢这本书缺乏可读性。它开始逐渐进入"让我思考"类别。
注意-@nderscore问我为什么改变条件的顺序。我这么做纯粹是为了简化表达。否则,您将开始复制对isStandard
的调用,或者进入这种奇怪的条件逻辑"树"结构,如下所示:
alert(
isStandard(statement) ?
(isPerfect(statement) ?
"This is a perfect palindrome." :
"This is a standard palindrome.") :
"The statement is not a palindrome.");
我更喜欢前者。。。有些人可能更喜欢后者。
var m = [" a perfect ", " a standard ", " not a "];
alert("This is"
+ (isStandard(statement)
? isPerfect(statement)
? m[0] : m[1]
: m[2])
+ "palindrone")
var m = [" a perfect ", " a standard ", " not a "];
console.log("This is" + (true ? true ? m[0] : m[1] : m[2]) + "palindrone")
不是三元的,但可读性更强。
switch(number(isStandard(statement)) + number(isPerfect(statement)))
{
case 2:
alert("This is a perfect palindrome.");
case 1:
alert("This is a standard palindrome.");
case 0:
alert("The statement is not a palindrome.");
}
相关文章:
- 在Javascript中将一个值和字符串数组转换为if语句
- 如果语句为true,则对一个或多个ng进行角度检查
- 如何在不使用return的情况下跳过下一个if语句
- 我们可以在一个js文件中有多个module.exports语句吗
- 需要一个用于评分系统的 JavaScript IF 语句
- 当解析树只有一个语句时,如何评估生产“SourceElements:SourceElements SourceEleme
- for 循环中的 if 语句都执行,而不仅仅是一个
- Js提示:“;期望一个赋值或函数调用,而看到一个表达式“;,Switch语句
- 为什么下面的if语句排除了一个'It’s和其他的一样
- 阻止表单提交 javascript 为什么有一个明显的错误语句返回 true
- 创建一个“;“开关”;Adobe Acrobat表单字段的语句
- Vanilla JavaScript:有没有办法在一个语句中切换多个CSS类
- 如何停止和if语句如果另一个if语句为true
- Javascript验证不起作用——只要一个if语句为true,它就会停止所有if语句
- 如何在函数中编写 if/else 语句,告诉我一个数字是否可以被 2 整除(在 javascript 中)
- 如何在jquery方法中创建一个if语句
- 如何发送一个语句以用作代码中的命令
- 如果jquery脚本's在另一个php页面的php-include语句中使用
- 如何简化一个长 javascript switch case 语句
- 这是一个有 2 个条件的条件语句,我需要添加第三个条件