https://xiedaimala.com/courses/8757eca2-d1b0-4149-b196-4681670ea275/random/c520adf1c1#/common

webpack部分

babel原理

parse:把代码code变成AST
tarverse:遍历AST进行修改
generate:吧AST变成代码code2
即:code → ATS → AST2 → code2

为什么必须要用AST

很难用正则表达式来替换,正则很容易把let a = ‘let’变成var a = ‘var’
需要识别每一个单词的意思,才能做到只修改用于声明变量的let
而AST能明确地分析每个let的意思

实践

将let变成var

能不能自动把代码转为ES5
babel/parser
babel/core

代码技巧

使用哈希表来存储数据
通过检测key来避免重复

打包bundle

怎么才能运行import/export

不同浏览器功能不同

现代浏览器可以通过