ドキュメント
V8 は Google のオープンソースの C++ で記述された高パフォーマンスの JavaScript および WebAssembly エンジンです。これは Chrome と Node.js などで使用されています。
このドキュメントは、アプリケーションで V8 を使用したい C++ デベロッパー、および V8 の設計とパフォーマンスに興味がある方を対象としています。このドキュメントでは V8 の概要を紹介しますが、残りのドキュメントでは V8 をコードで使用する手順と設計の詳細を説明し、V8 のパフォーマンスを測定するための JavaScript ベンチマークのセットを提供しています。
V8 について #
V8 は ECMAScript と WebAssembly を実装し、x64、IA-32、ARM プロセッサを使用する Windows、macOS、Linux システムで動作します。追加システム(IBM i、AIX)とプロセッサ(MIPS、ppcle64、s390x)は外部でメンテナンスされています。詳細は ポート をご覧ください。V8 は任意の C++ アプリケーションに組み込むことができます。
V8 は JavaScript ソースコードをコンパイルして実行し、オブジェクト用にメモリの割り当てを処理し、不要になったオブジェクトをガベージコレクションします。V8 のストップ・ザ・ワールド、世代別、正確なガベージコレクタは V8 のパフォーマンスの鍵の 1 つです。
JavaScript は一般的にブラウザでのクライアント側のスクリプティングに使用され、たとえば Document Object Model (DOM) オブジェクトの操作に使用されます。ただし、DOM は通常、JavaScript エンジンではなくブラウザによって提供されます。V8 でも同様で、Google Chrome は DOM を提供します。しかし、V8 は ECMA 標準で指定されたすべてのデータ型、演算子、オブジェクト、および関数を提供します。
V8 を使用すると、任意の C++ アプリケーションが独自のオブジェクトと関数を JavaScript コードに公開できます。公開するオブジェクトと関数は独自の判断で決定します。
ドキュメントの概要 #
- V8 をソースから構築する
- 貢献
- デバッグ
- V8 の埋め込み
- 内部の詳細
- 最適化可能な JavaScript を記述する