以下代码段无法编译:
const a = a || (...args) => {
console.log(args);
}
出现以下错误:
repl: Unexpected token (1:16)
> 1 | const a = a || (...args) => {
| ^
2 | console.log(args);
3 | }
通过以下解决方法,它可以工作:
const a = a ? a : (...args) => {
console.log(args);
}
除了最初的问题,已经由@loganfsmyth解决了。接下来的问题是,为什么以下代码有效?
const a = a || () => {}
答案 0 :(得分:1)
此代码中有两个不同的问题。你的问题的具体答案是你需要parens,例如
const a = a || ((...args) => {
console.log(args);
});
然而,这也行不通,因为您在初始化之前也在阅读a
,这将触发抛出临时死区错误。目前尚不清楚为什么你会在这段代码中使用a
。