应该在什么时候使用Javascript条件运算符

When should one use the Javascript conditional operator?

本文关键字:Javascript 条件运算符 什么时候      更新时间:2023-09-26

Righto,所以我在读过的很多代码中都遇到了这一点,并且我了解Javascript中条件运算符的功能角色;我不明白的是什么时候应该使用它。

我已经阅读了ECMAScript规范5.1,但它对我决定何时实现它没有太大帮助

例如,我可以很容易地看到替换代码的好处:

if (isTrue == true) {
  doSomething();
}
else {
  doSomethingElse();
}

下一篇:

isTrue ? doSomething() : doSomethingElse()

当if里面的代码…else。。。语句很长,或者条件运算符嵌套在其他条件运算符中。决定何时使用条件语句的哪个版本的明显候选者是"用条件运算符替换它是否会使代码更容易遵循?"。不幸的是,我在编写代码方面相当缺乏经验,我不确定什么时候会这样,而且我对自己的代码有偏见,无论它写得多么糟糕

任何比我经验丰富的人能给我一个稍微不那么主观的测试吗?你何时使用它,这样我就可以尝试效仿了?

相关:JS如何使用?:(三元)运算符

我认为它对代码的易读性和属性的简单性很有用。哪一个更容易阅读?:)

var numberType = (number % 2 == 0) ? "even" : "odd";
// or
var numberType;
if (number % 2 == 0) {
    numberType = "even";
} else {
    numberType = "odd";
}

三元算子被设计用于取代

if (test) {
 i = something();
} else {
 i = somethingElse();
}

带有

i = test?something():somethingElse();

你不能把它看作是if-then-else快捷方式,而是一个条件表达式(而不是条件指令)。