V8 是 JavaScript 虚拟机的一种,可以将 JavaScript 虚拟机理解成一个翻译程序,将编程语言 JavaScript 翻译成机器能理解的机器语言。
在 V8 出现之前,JavaScript 虚拟机采用的都是解释执行的方式,导致 JavaScript 执行速度过慢。V8 率先引入了**即时编译(JIT)**的双轮驱动的设计,这是一种权衡策略,混合编译执行和解释执行两种手段,给 JavaScript 的执行速度带来了极大的提升。
另外,V8 还早于其他虚拟机引入了惰性编译、内联缓存、隐藏类等机制,进一步优化了 JavaScript 代码的编译执行效率。V8 的出现,将 JavaScript 虚拟机技术推向了一个全新的高度。
V8 的主要职责是来执行 JavaScript 代码,所以需要首先了解 JavaScript 语言的基本特性和设计思想。
通过对 JavaScript 语言的分析理解后,就方便了解 V8 执行 JavaScript 代码的完整流程了。
主要可以分为: