我正在使用Acorn将一些语法上有效的 JavaScript 代码解析为 ESTree 以进行进一步处理。Acorn 似乎也进行了一些语义检查 - 特别是它会为重复声明引发错误。例如,解析以下代码会引发错误Identifier 'f' has already been declared
:
function f() { return 1; }
function f() { return 2; }
我不希望检查此类语义错误 - 我正在对生成的 ESTree 进行自定义处理,因此源代码的语义有效性对我来说并不重要。
我已经查看了该parse(input, options)
功能的 Acorn 选项,但我找不到任何听起来像我想要的东西。
有没有办法禁用这种语义检查?