1. ホーム
  2. javascript

[解決済み] Javascript - setIntervalにx回だけ起動するように指示する?

2023-02-26 12:23:09

質問

javascriptでsetIntervalが起動する回数を制限することは可能でしょうか?

どのように解決するのですか?

あなたは clearInterval() の後に x が呼び出されます。

var x = 0;
var intervalID = setInterval(function () {

   // Your logic here

   if (++x === 5) {
       window.clearInterval(intervalID);
   }
}, 1000);

グローバル変数を避けるために、上記の改良版として

function setIntervalX(callback, delay, repetitions) {
    var x = 0;
    var intervalID = window.setInterval(function () {

       callback();

       if (++x === repetitions) {
           window.clearInterval(intervalID);
       }
    }, delay);
}

次に、新しい setInvervalX() 関数を次のように呼び出します。

// This will be repeated 5 times with 1 second intervals:
setIntervalX(function () {
    // Your logic here
}, 1000, 5);