gpt4 book ai didi

javascript - 如何将自定义 AST 转换为 JS 代码

转载 作者:行者123 更新时间:2023-12-01 16:11:00 25 4
gpt4 key购买 nike

我目前正在根据我设计的新语言规范生成自定义 AST。此自定义 AST 包含我设计的不同节点,其中包含我现在生成 JavaScript 代码所需的所有信息。例如:

假设我有一个 customExpressionNode,我希望将其转换为包含几个 if 条件的 JavaScript 函数。

我目前正在研究像 Babylon 和 Esprima 这样的库,以便从我的自定义 AST 生成新的 Javascript AST,但据我所知,这些库使用的 AST 非常复杂。我还想避免将 js 代码打印到几个文件中然后解析和编译它们,所以我的问题是:

有没有更好的方法以编程方式生成符合 JavaScript 的 AST,我可以使用它来生成 JavaScript 代码?

最佳答案

像这样的东西? https://github.com/estools/escodegen

A simple example: the program


escodegen.generate({
type: 'BinaryExpression',
operator: '+',
left: { type: 'Literal', value: 40 },
right: { type: 'Literal', value: 2 }
})

产生字符串 '40 + 2' .

关于javascript - 如何将自定义 AST 转换为 JS 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49629651/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com