文件檔
V8 是 Google 開放源碼的高效能 JavaScript 與 WebAssembly 引擎,由 C++ 編寫。它被用於 Chrome 以及 Node.js 等多個應用中。
本文件檔旨在為希望在其應用程式中使用 V8 的 C++ 開發人員以及任何對 V8 的設計和效能感興趣的人提供指引。本文件將引導您認識 V8,其餘資料則展示如何在代碼中使用 V8 和描述其部分設計細節,同時提供一組 JavaScript 基準測試以評估 V8 的效能。
關於 V8
V8 實現了 ECMAScript 和 WebAssembly,並可運行於使用 x64、IA-32 或 ARM 處理器的 Windows、macOS 和 Linux 系統上。其他系統(如 IBM i、AIX)以及處理器(如 MIPS、ppcle64、s390x)由外部維護,詳見 ports。V8 可嵌入任意 C++ 應用程式中。
V8 編譯並執行 JavaScript 原始碼,處理物件的記憶體分配,並回收其不再需要的物件。V8 的停機回收、分代式、精確垃圾回收器是其效能的關鍵之一。
JavaScript 通常在瀏覽器中用於客戶端腳本,例如操作文件物件模型 (DOM) 物件。不過,DOM 通常不是由 JavaScript 引擎提供的,而是由瀏覽器提供。對 V8 而言也如此——Google Chrome 提供了 DOM。然而,V8 提供了 ECMA 標準中指定的所有數據類型、運算符、物件和函數。
V8 使任何 C++ 應用程式能將其自定義物件和函數暴露於 JavaScript 代碼中。您可以自行決定希望對 JavaScript 暴露的物件和函數。