有时我想将两个语句组合成一个以省略条件句中的花括号。例如,在PHP中,而不是写
if ($direction == 'south-east') {
$x++;
$y++;
}
我会写
if ($direction == 'south-east') $x++ and $y++;
但有没有办法在JavaScript中做到这一点?写x++ && y++
似乎不起作用。
答案 0 :(得分:9)
大括号并不是那么糟糕,但是 - 在非常具体的情况下 - 你可以enhance your code by using commas:
if (direction == 'south-east') x++, y++;
答案 1 :(得分:1)
你可以这样做:
var x = 0,
y = 0,
cond = true;
if (cond) ++x && ++y;
注意:如果x为-1
;
或没有if
:
cond && ++x && ++y;
所以你的代码看起来像这样:
if ($direction == 'south-east') $x++ && $y++;
请注意,++
运算符位于变量之后,表示如果$x
为0
,则无效。
++x
,则 -1
会返回假
如果x为x++
0
会返回假
答案 2 :(得分:0)
{ }
就是这样 - 将一个块中的语句与任何流控制语句结合使用。您可以将整个块放在一行上 - 在这种情况下JS不关心空格。