2016-04-27 2 views
1

私は単純な間隔を作成しようとしていますが、予想より遅く動作しています。私は100msごとにメッセージを見なければならないが、代わりに1秒ごとにそれを見る。私はクロームコンソールにそれを貼り付けるとsetInterval()が予想より遅く動作する

var readyWaitElapsed = 0; 
var readyWait = window.setInterval(function(){ 

    readyWaitElapsed += 100; 

    console.log("Elapsed value", readyWaitElapsed); 

    if (readyWaitElapsed >= 1000){ 
    clearInterval(readyWait); 
    console.log("Timeout !"); 
    } 
}, 100); 

私は「経過値」-messageごとに1秒程度とてclearInterval()「タイムアウト」を参照してください:私は次のコードで何が間違って表示されません完了するまでに少なくとも10秒かかります。

誰もが考えていますか?

答えて

1

私は、コンソールがアクティブな間、非アクティブなタブでコードを実行していました。明らかにタブがアクティブでない(フォーカスにない)とき、Chromeは少なくともリソースを節約するためにインターバルとタイムアウトの実行を遅らせます。

このスローダウンは、どの値にも非常に正確に固定されているようには見えないので、どちらにも依存することはできません。

+0

フィードバックのためのインタテストポイントありがとう – Walfrat

関連する問題