初心者JavaScriptTypeScripttechはじめにフロントを業務として触り初めて、半年くらい経ちました。理解できてきて「フロント楽しいかも?」と思ったのをきっかけに、つよつよフロントエンジニアを目指して、アウトプットしていきます。説明しろと言われると「うーん」となってしまう、非同期処理から学習していきます!そもそも非同期処理ってなに?一言で言うと「裏側でいろいろやってくれる処理のこと」です。イメージが湧かないので、非同期処理を理解するには、JavaScript・TypeScriptの処理がどのように進むかを理解する必要があります。JavaScript・TypeScriptはシングルスレッドで動くシングルスレッドではプログラムが動く場所は「1つ」ということです。カレーとサラダを作る場合で、イメージするとこんな感じでしょうか?※間違ってたらごめんなさい◎シングルスレッドシェフ1人、キッチン1つで作る◎マルチスレッドシェフ2人、キッチン2つで作るシングルスレッドだと何が困るのか?では、シングルスレッドだと何が困ってしまうのか?それは、「時間がかかる処理は待たなければならない」ということが起きてしまいます。上記のようなプログラムで作るとき、時間がかかる処理は「具材を煮る」部分です。「具材を煮る」より下にある処理は「具材を煮る」が完了してからでないと実行できないのです。シェフは「具材を煮る」が完了するまでずっと待っている状態になります。・ファイルの読み書きなどがあります。シングルスレッドで実行すると「ファイルの読み書き」が全て終わってから、次の処理が実行されるという事が起きてしまうので、アプリを使っているユーザーは長時間待たないと行けない状態になってしまいます。本当は具材を煮ている間にサラダを作りたくなりませんか?その方が効率良いですよね。5.1煮てる間にサラダを作る6.ルーを入れて煮る8.完成このように、JavaScript・TypeScriptは「非同期処理」を使って、時間がかかる処理があっても、時間がかかる処理は裏側でいろいろ処理してもらって、先にプログラムを実行させ、シングルスレッドの問題を回避しています。5.1煮てる間にサラダを作る6.ルーを入れて煮る8.完成おわり非同期処理の理解難しいですね。Proよくある質問LinksX(Twitter)GitHubメディアキットLegal利用規約プライバシーポリシ。