Babel 是下一代 JavaScript 编译器。
babel 执行三部曲如下:
使用 babel-parse 将 JS 代码解析成 AST 树
配合 babel-traverse 进行 AST 树的遍历, 同时使用 babel-core 对外暴露的 transform 来调用相应插件来转化 AST 树
transform
babal.transform(code, { plugins: { pluginA, pluginB }})
使用 babel-generator 将 AST 树转换回 JS 代码