Javascript三元运算符与空第二个表达式

时间:2016-12-02 20:51:06

标签: javascript conditional conditional-statements ternary-operator

我看过类似thisthis的类似问题,但他们在查看作业操作时会回答不同的问题。例如我的代码是

!item.completed ? addTask(item) : null

因为我想在满足条件时执行某个功能,或者如果不满足则不执行任何操作。我的问题是作为一个“空”的第二个表达式被传递的好习惯是什么?

我看到很多人使用null,另一方面我认为使用空字符串''也是一个有效选项,因为没有分配发生空字符串更快到类型,似乎没有任何缺点。

3 个答案:

答案 0 :(得分:12)

您可以使用logical or ||

item.completed || addTask(item) 

答案 1 :(得分:3)

我认为这不是三元运算符的好用。

我要么:

if (!item.completed) addTask(item);

或者

!item.completed && addTask(item);

答案 2 :(得分:1)

您可以使用:

!item.completed && addTask(item);

如果你不需要三元,那就毫无意义了。