AST学习笔记

你可以接触到的js的最底层

Posted by XX on November 15, 2019

ast概念: 抽象语法树

这里只涉及javaScript

JavaScript是一个机器 ==>抽象语法树变为这个机器的图纸和零件

什么时候会用到?

写出vue、react之类的大型框架,或类似webpack、vue-cli前端自动化的工具,或者有批量修改源码的工程需求,那你必须懂得AST。AST的能力十分强大,且能帮你真正吃透javascript的语言精髓。

ast对象文档

https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/Parser_API#node_objects


ast的工具:实现js的拆解和组装

recast

acorn

@babel/parser等


也可以认为是编译原理的入门

https://github.com/jamiebuilds/the-super-tiny-compiler

工具:

GoGoCode

简介: 全网最简单易上手,可读性最强的AST处理工具

像Jquery 一样链式操作AST