繁体   English   中英

如何将两个JavaScript语句合并为一个

[英]How to combine two JavaScript statements into one

有时我想将两个语句合并为一个,以省略条件括号中的花括号。 例如,在PHP中,无需编写

if ($direction == 'south-east') {
    $x++;
    $y++;
    }

我会写

if ($direction == 'south-east') $x++ and $y++;

但是有没有办法在JavaScript中做到这一点? 编写x++ && y++似乎无效。

花括号并没有那么糟糕,但是-在非常特殊的情况下-您可以使用逗号增强代码

if (direction == 'south-east') x++, y++;

这是小提琴: http : //jsfiddle.net/FY4Ld/

您可以这样做:

var x = 0,
    y = 0,
    cond = true;

if (cond) ++x && ++y;

注意:如果x为-1 ,则此方法不起作用;

还是没有, if

cond && ++x && ++y;

因此,您的代码如下所示:

if ($direction == 'south-east') $x++ && $y++;

请注意, ++运算符位于变量之后,这意味着如果$x0 ,则此操作将无效。

如果x为-1++x返回falsy
如果x为0则x x++返回falsy

您使用的{ }就是这样做的-将一个语句中的语句与任何流控制语句结合使用。 您可以将整个块放在一行上-在这种情况下,JS不在乎空格。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM