Javascript if短符号

Javascript if短符号,javascript,Javascript,我在网上冲浪,寻找if语句的简写Javascript符号。只有if,而不是else。我的问题是:它存在吗?例如: (i === 0) ? onlyMyTrueValue; 我发现的唯一一个片段是: (i === 0) ? myTrueValue : myFalseValue; 你可以做: (i === 0) && onlyMyTrueValue; 上述语句的右侧将仅在左侧通过时执行。您可以执行(i==0)和&onlyMyTrueValue,但出于可读性考虑,您不应该这样做

我在网上冲浪,寻找if语句的简写Javascript符号。只有if,而不是else。我的问题是:它存在吗?例如:

(i === 0) ? onlyMyTrueValue;
我发现的唯一一个片段是:

(i === 0) ? myTrueValue : myFalseValue;
你可以做:

(i === 0) && onlyMyTrueValue;
上述语句的右侧将仅在左侧通过时执行。

您可以执行
(i==0)和&onlyMyTrueValue,但出于可读性考虑,您不应该这样做

比较您的原始版本:

(i === 0) ? onlyMyTrueValue;
如果:

if (i === 0) onlyMyTrueValue;

这只是多了一个字符,并且与
&&
方法的字符数相同。选择可读的选项。

谷歌短路评估。编写
if
语句的简写方法是
if(i==0)somevar=someval
但是你应该让一个JS浏览器来处理这个问题。JavaScript的这个特性已经把我惯坏了。真希望我知道这一点+1@ajp15243-我也不能否认我的放纵….;-)但如果不是布尔值,则该表达式不会仅返回
trutyValue
。实际上,如果第一个表达式的计算结果为
truthy
值,则无论其类型如何,它都会按原样返回它。+1表示可读性为王。虽然我发现了类似于
var foo=bar | |[]bar
)类似于要过滤掉的
undefined
null
,则code>有助于分配默认值。在99.9%的时间内读取代码分支时,可读性是最重要的。短路方式的可读性较差。如果您担心文件大小,请先通过闭包编译器运行代码,它会将ifs缩小为短路。@nathanhayfield他只是引用OP并与假设的语法进行比较。