setInterval : 一定時間ごとにある処理を繰り返す。前の処理が終わったかを判定せずに繰り返す。
var i = 0; function show() { console.log(i++); }; setInterval(function(){ show(); },1000);
setTimeout : 一定時間後にある処理を1回だけ実行する。前の処理が終わったかどうかを考慮する。
var i = 0; function show() { console.log(i++); }; setInterval(function(){ show(); },1000);
なのでsetTimeoutのほうがよく使われる。
//setTimeoutで繰り返し処理をする方法。 var i = 0; function show() { console.log(i++); setTimeout(function(){ show(); },1000); }; show();//最初の1回だけ呼び出してあげないといけない。
//setTimeoutで繰り返し処理を止める方法。 var i = 0; function show() { console.log(i++); var stoptime = setTimeout(function(){ show(); },1000); if (i > 3) { clearTimeout(stoptime); } }; show();
参照 : ドットインストール