AST

Pcjmy2024-09-15babelAST

AST

什么是 AST

在计算机科学中,抽象语法树(Abstract Syntax Tree,AST)是源代码语法结构的一种抽象表示。它以树状的形式表现编程语言的语法结构,树上的每个节点都表示源代码中的一种结构。

AST 结构

为了统一ECMAScript标准的语法表达。社区中衍生出了ESTree Spec,是目前前端所遵循的一种语法表达标准。

AST 是如何生成的

一般来讲生成AST抽象语法树都需要javaScript解析器来完成

JavaScript解析器通常可以包含四个组成部分:

  • 词法分析器(Lexical Analyser)
  • 语法解析器(Syntax Parser)
  • 字节码生成器(Bytecode generator)
  • 字节码解释器(Bytecode interpreter)

参考资料

从Babel开始认识AST抽象语法树open in new window

https://github.com/reactjs/react-codemodopen in new window

https://github.com/cpojer/js-codemodopen in new window

Last Updated 2024/9/15 22:57:10