正如其他人所说,您缺少分号。但…
谁能解释?
let a = undefined, b = undefind, c = undefined;[a, b] = (['A', 'B'][(b, c)] = ['BB', 'C']);console.log(`a=${a} b=${b} c=${c}`);其中
[a, b] = …;
是预期的解构任务(… = ['BB', 'C'])
是一个赋值表达式,将数组分配到左侧,并对数组求值['A', 'B'][…]
是对数组文字的属性引用(b, c)
正在使用逗号运算符,计算结果为c
(是undefined
)
如果你想省略分号,让那里的人永远自动插入 可能 需要的话,你将需要把一个在开始每一行的是开头
(,
[,
/,
+,
-或```。



