原因是:安装的版本不支持
如果使用brew install v8
方式安装的话,是不包含一些常用的例如–print-ast(查看代码被解析器结构化成 的AST)、–print-scopes(查看当前的v8作用域)等在debug模式下的方法的。
可以先通过brew uninstall v8
卸载掉
然后使用 npm i jsvu -g
接着执行jsvu,选择v8和v8-debug就够了(最后面附所有的js引擎和支持的操作系统一览图)
接着设置mac的v8环境变量
vim ~/.bash_profile
将下面的添加进去
export PATH="/usr/local/.jsvu/bin:$PATH"
保存,接着激活新的配置
source ~/.bash_profile
然后就可以愉快地进行调试,需要注意的是,前面提到的–print-ast、–print-scopes等都是debug版本才能用的,所以,完整的调试指令应该是 v8-debug --print-ast test.js
,否则还是会报错Warning: unknown flag --print-ast.
js引擎和支持的操作系统一览图: