JS引擎编译基本过程
一、编译过程(以V8引擎为例)
- parse,将
js
代码解析成抽象语法树(AST
)(词法分析,语法分析) - Ignition:解释器,负责将
AST
转换成字节码 - TurboFan:
JIT
编译器,利用Ignitio
所收集的类型信息,将Bytecode
转换为优化(如重复执行的代码不会在运行时重复进行解释)
的机器码
![在这里插入图片描述](https://img-blog.csdnimg.cn/05547a9269ff4f75bd41ed2516a6f8a4.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dkaHhz,size_16,color_FFFFFF,t_70)
参考博文:
[1]: https://juejin.cn/post/6844903953981767688
[2]: https://segmentfault.com/a/1190000013126460