白话文先总结
就是把代码转化成JSON结构的数据,方便代码分析或者代码转换。
什么是 AST(抽象语法树)?
AST,全称 Abstract Syntax Tree(抽象语法树),是代码的结构化表示,主要用于描述代码的语法结构,同时以树状的形式表达代码各个组成部分之间的关系。
每个节点(Node)代表源码中的一部分,比如:
- 变量声明
- 函数调用
- 运算表达式
抽象语法树被广泛应用于**编译器、代码分析工具、代码转换工具(如 Babel、ESLint、Prettier)**中。
AST 的作用
- 代码分析:工具如 ESLint 会通过解析代码生成 AST,然后检查代码是否符合规范。
- 代码转换:Babel 将现代 JavaScript(ES6+)代码转换为旧版浏览器兼容的代码。
- 代码优化:编译器可以通过 AST 对代码进行优化,例如减少无用变量。
- 代码格式化:Prettier 解析代码为 AST,然后重新生成符合格式的代码。
- 代码可视化:可以用图形化工具理解代码的语法结构。