🕌

SyntaxError: Unexpected token '?' なときは ?? を使っている

2021/08/28に公開

Minify されていると根本原因がぱっとはわからないのでメモ。

Node 12 で

a ?? b

というようなファイルを実行すると

$ node foo.js    
/projects/rust-analyzer/foo.js:1
a ?? b
   ^

SyntaxError: Unexpected token '?'
    at wrapSafe (internal/modules/cjs/loader.js:915:16)
    at Module._compile (internal/modules/cjs/loader.js:963:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
    at Module.load (internal/modules/cjs/loader.js:863:32)
    at Function.Module._load (internal/modules/cjs/loader.js:708:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:60:12)
    at internal/main/run_main_module.js:17:47

こういうエラーになる。

esbuild であれば、--target=node12 にするか、node のバージョンを上げる。

Discussion