2012-03-17 13 views
7

setInterval自体をクリアする方法があるのだろうかと思います。このようなJavascript setInterval自体がクリアされていますか?

何か:

setInterval(function() { 
    alert(1); 
    clearInterval(this); 
}, 2000); 

私は、停止します終了していますならば、それは事をチェックしておきたいです。

+1

少なくとも、それだけで 'setTimeout'を使用する方が理にかなって。 –

+0

おそらくあなたは 'setTimeout'を好むだろう – vol7ron

+0

agh GGGは私にそれを打ち明けた。 – vol7ron

答えて

16

は、この方法を試してください:あなたはそれだけで1時間呼び出しです知っていれば

var myInterval = setInterval(function() { 
    alert(1); 
    clearInterval(myInterval); 
}, 2000); 

別の方法はsetTimeout()を使用しています。この例では

+0

nahはこのようではない 私はそれが終わったら何かをチェックしておきたい。 – ThElitEyeS

+1

鮮やかだが、オブジェクトの内側から? 'bar = {zaa:function(){this.int = setinterval(function(){clearInterval(this.int)}、100)}}; foo =新しいbar.zaa(); ' –

6
(​function() { 
    var runs = 3; 
    var i = setInterval(function() { 
     console.log("Number " + runs);       
     --runs; 
     if (runs == 0) { 
      clearInterval(i); 
     }  
    }, 1000); 
}());​ 

jsfiddle

関連する問題