JavaScriptの関数、スレッド、および非同期実行

JavaScriptが内部でどのように動作しているかを理解する必要があります。

関数、プロセス、スレッド、および実行スタイルの内訳は以下の通りです。

JavaScript関数の種類

プロセス vs スレッド

プロセスとは、コンピュータ上で実行されているプログラムのことです。

スレッドとは、プロセス内にある小さな単位のことです。

同期 vs 非同期

JavaScriptはシングルスレッドです。コールスタックを使用して、一度に1つのタスクを処理します。

同期実行 (Synchronous Execution):

非同期実行 (Asynchronous Execution):

非同期の仕組み:

  1. JavaScriptがタスク(タイマーなど)をWeb APIに送ります。
  2. メインのコードは実行を継続します。
  3. タスクが完了すると、コールバックキューに移動します。
  4. スタックが空になると、イベントループがそれをコールスタックに移動させます。

これにより、ウェブアプリの高速性とレスポンス性能が維持されます。

Source: https://dev.to/kamalesh_ar_6252544786997/types-of-function-and-threads-process-and-synchronous-vs-asynchronous-in-javascript-1hhd