我如何访问v8解析树怎么做?

use*_*898 8 parsing v8 abstract-syntax-tree

我喜欢使用v8引擎并将其代码转换为基于此的其他编程语言,例如,如果我理解它正确的第一步我需要获取解析树

我的问题是:我可以从v8获得它还是我需要从js代码生成它.什么是更轻松的方式?

Tho*_*low 4

从 V8 本身获取 AST(注释语法树,解析树)看起来很困难,但还有很多其他 JavaScript 解析器可以满足您的需求。我建议查看 Esprima ( http://esprima.org/ ),它是一个用 JavaScript 编写的 JavaScript 解析器。这允许您提供一些 JavaScript 源代码并获取 AST 的 JavaScript 对象版本,您可以根据需要将其转换为另一种语言(或者修改然后转换回 JavaScript 或出于其他原因使用)。

他们有一些很棒的在线演示,可以让您感受到它的功能:http://esprima.org/demo/index.html