使用if else速记进行多变量更新

时间:2018-03-15 09:43:52

标签: javascript

我想用if else简写更新多个值,如下所示:

let a = 0;
let b = 1;
let bool = true;

if(bool) {
  a = 4;
  b = 7;
}

用这样的速记:

bool ? a = 8, b = 10 : null

但是Unexpected token ,

2 个答案:

答案 0 :(得分:2)

您可以使用逻辑AND。

bool && (a = 8, b = 10);

Documentation说:

  

如果要在需要单个表达式的位置包含多个表达式,可以使用逗号运算符。

答案 1 :(得分:1)

您可以将它们包装在()中。它将评估()内的表达式并返回最后一个结果。

bool ? (a = 8, b = 10) : null

但如果您认为nullundefined相同,则可以使用&&

bool && (a = 8, b = 10)