以下代码,在执行时,
true && () => {}
收益 率
Uncaught SyntaxError: Malformed arrow function parameter list
为什么?
编辑:我知道将函数包装在括号中是有效的,谢谢大家,但我想了解为什么解析器不能首先弄清楚它是一个函数。
原因是
由于第一部分true || (a)
被自己解析,然后解析器试图解析其余部分=> {}
,这导致了错误。
它解析true && ()
作为参数列表。
因为箭头函数具有特殊的解析规则。请参阅解析顺序段落中的官方文档。