Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
if语句的最短Javascript速记_Javascript_If Statement - Fatal编程技术网

if语句的最短Javascript速记

if语句的最短Javascript速记,javascript,if-statement,Javascript,If Statement,对以下对象执行等效Javascript“If语句”的最短方式(最少字符)是什么: if(value) { value = value.toString(); } 您可以使用逻辑&&作为返回的值 因此,如果value是真的,那么它将计算value.toString()并返回该值,否则它将返回value试试这个 value && (value += '') &&运算符需要两个参数并返回: 第一个计算结果为false(为false-y),或 最后一个,否则 因此,expre

对以下对象执行等效Javascript“If语句”的最短方式(最少字符)是什么:

if(value) {
  value = value.toString();
}

您可以使用逻辑&&作为返回的值

因此,如果
value
是真的,那么它将计算
value.toString()
并返回该值,否则它将返回
value

试试这个

value && (value += '')
&&运算符需要两个参数并返回:

  • 第一个计算结果为false(为false-y),或
  • 最后一个,否则
因此,expression
(value+='')
将仅在
value
存在时进行评估

此外,当我们使用
+操作符时,javascript类型将整数转换为字符串。因此,表达式
(value+='')
3
(整数)转换为
“3”
(字符串)

您可以使用以下方法:

value = (value) ? value.toString() : value;
但我认为这不是一个很好的例子(value?,value.toString?)

另一种可能对您有所帮助的方式,但不尽相同:

value = value && value.toString();

value=value&&value.toString()


如果value为true,它将计算value.toString()并返回结果,否则它将返回value

Shorter并不总是读得更好。我投票结束这个问题,因为它与代码高尔夫差不多。(守则没有错)为什么要投否决票?这就是解决问题的目的,也是最短的速记!我认为你的第二个例子很好,而且是最短的,所以我把票投给你,因为看起来你是第一个,比所有人都多
value = value && value.toString();