AST的概念

AST(抽象语法树),一般来讲,就是一段可执行代码的语法结构描述——描述的方式是将语法具象为tree型数据结构(一般都以JSON结构显示)。
你可以狭义理解为 AST 就是 将一段代码解析成的JSON数据结构。

推荐 新人玩的JS to AST 转换工具: babel-template

实际上,AST解析工具市面上有很多很多,而babel-template的文档并不友好。但 这个包前缀名是babel —— 所以我想不需要其他理由了吧。

  • 安装方式

    1. npm install --save-dev babel-template
  • 使用方式 ```javascript // nodejs version > 8.4.0 // demo.js const template = require(‘babel-template’);

const code = function fn(){ console.log(1); } const astCreator = template(code);

const ast = astCreator({ // …可以设置对应参数 })

console.log(JSON.stringify(ast,null,4));

// node ./demo.js

```