SetInterval 間隔を動的に調整する
この JavaScript 関数は元々、100 ミリ秒の固定間隔で文字列を操作するために SetInterval を呼び出しました。
var interval = setInterval(function() { ... }, 100);
ただし、ユーザーはこの間隔を動的に調整することを希望しましたループカウンターに基づいています。次のように変更すると、
var interval = setInterval(function() { ... }, 10*counter);
効果がないことがわかりました。
匿名関数を使用した解決策
目的の動作を実現するには、匿名関数を使用できます。 :
var counter = 10; var myFunction = function(){ clearInterval(interval); counter *= 10; interval = setInterval(myFunction, counter); } var interval = setInterval(myFunction, counter);
この関数は、現在の間隔を繰り返しクリアし、カウンターを次のように乗算します。
setTimeout を使用した更新された解決策
A. Wolff が提案したように、setTimeout は、 clearInterval:
var counter = 10; var myFunction = function() { counter *= 10; setTimeout(myFunction, counter); } setTimeout(myFunction, counter);
このメソッドを使用すると、setTimeout は新しい値を使用して関数を再帰的にスケジュールします。間隔。
以上がJavaScript で setInterval 間隔を動的に調整するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。