【发布时间】:2020-01-18 00:46:54
【问题描述】:
我想用三元运算符重写它。我相信我需要 2 个操作员。
if (a.quantity > b.quantity) {
return -1;
} else if (a.quantity < b.quantity) {
return 1;
} else {
return 0;
}
三元
return (a.quantity > b.quantity) ? -1 : (a.quantity < b.quantity) ? 1 : 0;
这会是等价的吗?
【问题讨论】:
-
是的…………
-
...为什么要重写为条件运算符?它不太清楚,并且没有节省足够的空间甚至值得。你有一条线而不是 5 条线——你的缩小器会做得比这更好。如果您对阅读全部 5 行不感兴趣,那么大多数代码编辑器都带有代码折叠功能,您可以在其中折叠这些块。然而,
if语句的清晰度以及理解和修复代码的速度可能会否定链式条件具有的任何优势。 -
@VLAZ 我明白你在说什么。我只是好奇如何编写一个有两个以上选项的三元组。我同意
if声明可以更快地了解发生了什么。
标签: javascript if-statement ternary-operator