V8 引擎执行 JS 过程

  • 首先 V8 引擎初始化基础环境,主要是全局变量,内部函数,事件循环机制等等。
  • 将代码解析成 AST(Abstract Sytax Tree) 抽象语法树,方便引擎识别的代码,同时生成作用域。
  • 依赖作用域和 AST 生成字节码
  • 执行字节码
  • 监听热点字节码
  • 如果有热点字节码,优化为二进制机器码(极大提升运行效率)
  • 如果热点字节码有改动(因为 JavaScript 是一门动态语言),进行反优化

你可能感兴趣的:(V8 引擎执行 JS 过程)