2016/01/13

タイマー処理のsetIntervalとsetTimeout






setInterval : 一定時間ごとにある処理を繰り返す。前の処理が終わったかを判定せずに繰り返す。
1
2
3
4
5
6
7
8
var i = 0;
 
function show() {
  console.log(i++);
};
setInterval(function(){
  show();
},1000);


setTimeout : 一定時間後にある処理を1回だけ実行する。前の処理が終わったかどうかを考慮する。
1
2
3
4
5
6
7
8
var i = 0;
 
function show() {
  console.log(i++);
};
setInterval(function(){
  show();
},1000);




なのでsetTimeoutのほうがよく使われる。
1
2
3
4
5
6
7
8
9
10
//setTimeoutで繰り返し処理をする方法。
var i = 0;
 
function show() {
  console.log(i++);
  setTimeout(function(){
    show();
  },1000);
};
show();//最初の1回だけ呼び出してあげないといけない。




1
2
3
4
5
6
7
8
9
10
11
12
13
//setTimeoutで繰り返し処理を止める方法。
var i = 0;
 
function show() {
  console.log(i++);
  var stoptime = setTimeout(function(){
    show();
  },1000);
  if (i > 3) {
    clearTimeout(stoptime);
  }
};
show();



参照 : ドットインストール