JavaScript性能优化(三)--V8工作流程

138 阅读1分钟

image.png

基本工作流程

image.png

Scanner扫描器

image.png image.png

Parser解析器

image.png

解析器优点

  • 跳过未被使用的代码
  • 不生成AST,创建无变量引用和声明的scopes
  • 依据规范抛出特定错误
  • 解析速度更快 image.png

全量解析

  • 解析被使用的代码
  • 生成AST
  • 构建具体scopes信息,变量引用、声明等
  • 抛出所有语法错误 image.png

V8提供的解释器:Lginition
V8提供的编译器模块:TurboFan