V8 JavaScriptエンジン

V8は、Google Chromeを支えるJavaScriptエンジンの名前です。 Chromeでブラウジング中にJavaScriptを受け取って実行するものです。

V8はJavaScriptエンジン、つまりJavaScriptコードを解析して実行するものです。 DOM、およびその他のWebプラットフォームAPI(すべてランタイム環境を構成します)は、ブラウザによって提供されます。

素晴らしいのは、JavaScriptエンジンがホストされているブラウザから独立していることです。 この重要な機能により、Node.jsが登場しました。 V8は2009年にNode.jsを支えるエンジンとして選ばれ、Node.jsの人気が爆発的に高まるにつれて、V8は現在、JavaScriptで記述された信じられないほどの量のサーバーサイドコードを支えるエンジンになりました。

Node.jsエコシステムは巨大であり、Electronのようなプロジェクトでデスクトップアプリも強化しているV8のおかげです。

その他のJSエンジン

他のブラウザには独自のJavaScriptエンジンがあります

他にもたくさんあります。

これらすべてのエンジンは、ECMA ES-262標準(ECMAScriptとも呼ばれます)を実装しています。これは、JavaScriptで使用される標準です。

パフォーマンスの追求

V8はC ++で記述されており、継続的に改善されています。 ポータブルであり、Mac、Windows、Linux、およびその他のいくつかのシステムで動作します。

このV8の紹介では、V8の実装詳細は無視します。より信頼性の高いサイト(V8公式サイトなど)に記載されており、時間の経過とともに、しばしば根本的に変化します。

V8は、他のJavaScriptエンジンと同様に、WebとNode.jsエコシステムを高速化するために常に進化しています。

Web上では、何年も前からパフォーマンスの競争が続いており、私たち(ユーザーと開発者)はこの競争から多くの恩恵を受けています。なぜなら、私たちは毎年より高速で最適化されたマシンを手に入れているからです。

コンパイル

JavaScriptは一般的にインタプリタ型言語と見なされていますが、最新のJavaScriptエンジンはもはやJavaScriptをインタプリタするだけでなく、コンパイルします。

これは2009年にSpiderMonkey JavaScriptコンパイラがFirefox 3.5に追加されて以来続いており、誰もがこのアイデアに従っています。

JavaScriptは、実行を高速化するために、V8によって内部的に**ジャストインタイム(JIT)コンパイル**でコンパイルされます。

これは直感に反するように思えるかもしれませんが、2004年にGoogleマップが導入されて以来、JavaScriptは、一般的に数十行のコードを実行していた言語から、ブラウザで実行される数千から数十万行の完全なアプリケーションへと進化しました。

私たちのアプリケーションは、ほんの数個のフォーム検証ルールや簡単なスクリプトではなく、ブラウザ内で何時間も実行できるようになりました。

この*新しい世界*では、JavaScriptをコンパイルすることは理にかなっています。JavaScriptを*準備*するのに少し時間がかかるかもしれませんが、完了したら純粋にインタプリタされたコードよりもはるかにパフォーマンスが向上するからです。