Google Chrome の JavaScript エンジン V8 って?
# はじめにV8 エンジンは、Google のオープンソースで Javascript, WebAssembly のエンジンです。V8 は、 C++ で書かれており、Google Chrome や Node.js で動いています。# Javascript はどうやって動いているの?V8 エンジンは、2つのコンポーネントで構成されています。1. Meomry Heap(メモリの割り当てなど)2. Call Stack(コードを実行するためのスタック)Javascript から使える API (`setTimeout` など)には様々なものがありますが、これらは V8 エンジンから提供しているものではなく、ブラウザによって、提供されているものです。## Call StackJavascript は、シングルスレッドで動くので、Call Stack もシリアルに動きます。例えば、このようなコードがあるとします。```javascriptfunction multiply(x, y) { return x * y;}function printSquare(x) { var s = multiply(x, x); console.log(s);}printSquare(5);```すると、以下のようにスタックされます。[step 1] printSquare(5)[step 2] printSquare(5) | multiply(x, x)[step 3] printSquare(5) | console.log(s)[step 4] printSquare(5)[s
0