javascriptのシングルスレッドなのに非同期になる理由を解説します。
on Javascript, 開発
シングルスレッドとは一つのプログラムで一つのコードを実行されると言う意味です。
javascriptはシングルスレッド言語です。
C#, JAVA, rubyはマルチスレッド言語ですが、javascriptもシングルスレッドなのに非同期が可能です。
非同期(Asynchrous)とは先に実行されるコードの作業が終わる前に後で実行されるコードの作業が終われることを意味します。
つまり、同時に動けるコードを意味します。
ジャバスクリプトのV8エンジンはシングルスレッド
を持っているので、一つのstackしかありません。
果たしてjavascriptはシングルスレッド
なのにどうやって非同期的に実行ができるでしょうか。