执行JavaScript的过程

83 阅读1分钟

引言:众所周知,机器只能识别机器码,那么JS又是经过什么过程才能被识别的呢,也就是JS代码在呈现到浏览器之前到底做了什么?

经历了以下几步:

  • 1、js代码经历词法分析,成为token
  • 2、然后经过语法分析,将token转换成AST(抽象语法树)
  • 3、用解释器根据AST,生成字节码
  • 4、使用JIT即时编译技术,将字节码转成机器码,然后计算机就可以识别执行了。

V8引擎优化过程:

  • 1、边下载边解析
  • 2、监视器监视是否为初次执行,如果不是则会使用缓存,而无需编译;

c22fdb3bf7c6441091d97e4808918ef3_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.webp

babel编译es6代码

babel要将ess6转成es5,其也是根据AST来进行转换的

  • 1、先将ES6代码编译为AST
  • 2、然后将该AST转换为ES5的AST
  • 3、由ES5的AST还原出ES5代码