2011-12-20 15 views
3
setInterval(function() { 
     var current = ? getCurrentInterval ? ; 
     alert(current); 
}, 2000); 

チェックできますか?setIntervalの現在の時刻は?

+0

これはなぜ必要なのか説明できますか? – 472084

+0

あなたは何をしたいですか?トリガされた間隔をカウントするか、現在の時刻を取得しますか?具体的にする。 –

+0

現在の機械の時間を聞いていますか?カウンター?カウンタの場合は、カウンタを保持してください。 –

答えて

2

複数の異なるタイマーが実行されている可能性があるため、「現在の」間隔を与えることはありません。インターバルを格納し、後で問合せできる独自のTimerクラスを作成する方がよい場合があります。

複数のタイマーがあり、コールバック内の関連するTimerにアクセスする必要がある場合は、Javascriptのスコープコンテキストで少し創造的にする必要があります。これらの線に沿った何か:

function Timer(timeout) { 
    var self = this; 
    this.interval = timeout ? timeout : 1000; // Default 

    this.run = function (runnable) { 
     setInterval(function() { runnable(self); }, this.interval); 
    }; 
} 

var timer = new Timer(1000); 
timer.run(function (timer) { 
    alert(timer.interval); 
}); 
関連する問題