coffeescript和javascript中的三元(问号运算符)之间的区别?

阿夫拉姆·马夫里迪斯(Avraam Mavridis)

我的代码中有这一行:

de: (_.max(data, (product) -> product.prices.de )).price.de

我首先要检查是否product.prices已定义,如果已定义则返回product.prices.de否则返回0。在javascript中,我会这样写:

angular.isDefined(product.prices) ? product.prices.de : 0

但是,当我在coffeescript中尝试相同的操作时,coillinter不接受它。有什么提示吗?在使用查询运算符时,coffescript和javascript之间有区别吗?

编辑:

我会写

de: (_.max(data, (product) -> product.prices?.de )).prices.de

但是在这种情况下,如果product.prices不存在,该函数将返回null而不是0

本杰明·格伦鲍姆(Benjamin Gruenbaum)

CoffeeScript中的三元运算符只是一个if条件,因为CoffeeScript中的所有内容都是一个表达式。因此,以下内容:

condition ? something : somethingElse

成为:

if condition then something else somethingElse

请注意,就您而言,您不会写:

if product.prices then product.prices.de else 0

您可能想要:

product.prices?.de or 0

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

三元运算符和 && 运算符之间的确切区别是什么?

来自分类Dev

ifelse和Julia中的三元运算符有什么区别?

来自分类Dev

在JavaScript中返回三元运算符reduce

来自分类Dev

JavaScript中具有三元条件和逻辑的运算符优先级和运算符

来自分类Dev

+三元运算符中的运算符

来自分类Dev

Javascript三元运算符(?:)在单个块中更改和返回对象

来自分类Dev

PHP中的三元运算符和比较运算符如何工作?

来自分类Dev

JS:在此示例中,这些三元运算符有什么区别

来自分类Dev

打印和三元条件运算符之间的奇怪交互

来自分类Dev

自动使用三元运算符和模板

来自分类Dev

Java三元运算符和NullPointerException

来自分类Dev

三元运算符和退出语句

来自分类Dev

三元运算符和Twitter Typeahead

来自分类Dev

三元运算符和打印

来自分类Dev

自动使用三元运算符和模板

来自分类Dev

最佳实践“ OR”和“三元”运算符

来自分类Dev

三元运算符和 PHP 包括

来自分类Dev

Javascript:“ if”条件内的三元运算符

来自分类Dev

javascript:三元运算符的意外评估行为

来自分类Dev

Javascript三元运算符结果

来自分类Dev

JavaScript jQuery三元或.val()运算符问题

来自分类Dev

使用三元运算符的JavaScript递归函数

来自分类Dev

JavaScript三元运算符用法说明

来自分类Dev

Javascript三元运算符左值

来自分类Dev

javascript:三元运算符的意外评估行为

来自分类Dev

在javascript中使用三元运算符

来自分类Dev

Javascript && 和 || 运算符和内联三元函数产生 INSANE 结果

来自分类Dev

三元运算符和OR运算符的运算顺序

来自分类Dev

ASPX页面中的三元运算符

Related 相关文章

热门标签

归档