検証

JavaScriptにはsetTimeout関数,setInterval関数,XMLHttpRequest(Ajax)などの非同期処理が存在する。 しかし、JavaScriptの非同期処理は並列処理は同じものとは言えない。
JavaScriptの非同期処理は、サーバー側に仕事をさせる場合(Ajax,XMLHttpRequest)、並列処理がなされる。
しかし、自スクリプト中の他の処理を、非同期処理させようとしても並列処理にはならない。
つまり同期処理では、JavaScriptで書かれた重たい処理を並列実行することができない。

だが Web Workerを使えば、JavaScriptで書かれた重たい処理を並列実行させることができる。
しかし、Web WorkerはDOM操作やjQueryが使えないという弱点が存在する。

検証1:setTimeout(非同期処理)


setTimeout関数では並列処理ができない。

検証2:Web Worker (並列処理)


出力: