javascript - 三元运算符作为简短的条件语句

标签 javascript ternary-operator

在 Javascript 中使用三元运算符代替较长的条件语句是否有任何问题,例如使用:

(variable == "dog") ? dog_stuff() : false;

而不是

if ( variable == "dog" ) 
{
    dog_stuff();
}

这听起来像是一个愚蠢的问题,但我发现它非常快速且易于阅读,我只是不想在可能存在缺陷的情况下使用它?

最佳答案

你也可以这样写

(variable == 'dog') && dog_stuff();

如果您没有 else 语句。

backbone.js 中的几行:

  options || (options = {});
  models = _.isArray(models) ? models.slice() : [models];
  model = this.getByCid(models[i]) || this.get(models[i]);

如果非常必要,您可以将多个语句分组:

(1==1) && (a=2,b=3)
alert(a); // 2
alert(b); // 3

关于javascript - 三元运算符作为简短的条件语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9379458/

相关文章:

c# - 为什么 C# 三元运算符不能与委托(delegate)一起工作?

javascript - 如何使我的 Bootstrap Carousel 占据页面的整个宽度?

javascript - 如何修复计数器不显示正确值以及使用新字符串重置的问题

javascript - 不中断按键事件,同时保留单独的击键

javascript - 删除方法中的冗余代码

php - 转换变量时的三元运算符

javascript - 在 JavaScript 中计算元素宽度给出了错误的结果

javascript - 正则表达式部分匹配几个不同的组

javascript - Javascript 中的三元运算符和分组语句

C++11 constexpr 函数编译器错误与三元条件运算符 (? :)