AST(Abstract Syntax Tree),中文名为抽象语法树。
如图 左边js代码 右边ast语法树
1:安装nodejs
访问地址:
https://nodejs.org/en/download/
2: 安装bael库
npm install @babel/core
安装完以后局部会出现node_modules
//读取文件
const fs = require('fs');
// 将 js 代码解析为ast
const parser = require("@babel/parser");
//遍历语法树
const traverse = require("@babel/traverse").default;
// 这个可以生成想要的节点类型
const t = require("@babel/types");
// ast 转化为 js 代码
const generator = require("@babel/generator").default;
const jscode = fs.readFileSync("./demo.js", {
encoding: "utf-8"
});
let ast = parser.parse(jscode);
console.log(ast);
//在这里对ast进行一系列的操作
let code = generator(ast).code;
console.log(code);