非同期イベントとコールバック関数setTimeout()
実行すると、次のような順番でユーザにalertダイアログが表示されるコードを示す。
- beforeと表示する
- afterと表示する
- setTimeoutが呼ばれてから5秒後に、funcを実行する(5 seconds passedと表示する)
<script type="text/javascript"> var func = function(){ alert("5 seconds passed"); }; alert("before"); setTimeout(func, 5000); alert("after"); </script>
setTimeout関数に、コールバック関数としてfuncを渡している。
setTimeoutが呼ばれてから5秒経過後に、コールバック関数funcが実行されるのだ。
非同期処理なので、setTimeoutが呼ばれても処理はとまらず、次の処理(この場合alert("after"))に進むことに注意。