JavaScriptの繰り返し処理におけるsetIntervalとsetTimeout

JavaScriptの繰り返し処理におけるsetIntervalとsetTimeout最近、JavaScriptをドットインストールで、学んでる。とても基本的なことなんだけどメモ的に書いておく。

簡単な説明

  • setInterval : 一定時間ごとに処理を繰り返す。
  • setTimeout : 一定時間後に処理を実行する。
  • 第一引数に関数、第二引数にミリ秒を指定する。

繰り返し処理に適しているのはsetTimeout

  • setIntervalは前の処理が終わったかどうかを考慮せずに実行する。
  • setTimeoutは前の処理が終わったかどうかを考慮する。

なので、繰り返しょ処理はsetTimeoutが使われることが多い。

var i = 0;
function show() {
    console.log(i++);
    var tid = setTimeout(function() {
        show();
    }, 1000);
    if (i > 3) {
        clearTimeout(tid);
    };
}
show();

ちなみに、タイマーを止める際は、返り値のidを変数で持っておいて、それに対してclearTimeout()を実行する。

参考

Pocket
LINEで送る

You may also like...