意外と調べても出てこなかったのでメモがてら書いておく。
(検索力がないだけかも)
利用するシーンは限られるかもしれないが、気軽にポーリング処理を書きたいとき setInterval
を使って以下のようなポーリング処理を書くことが可能。
const intervalId = setInterval(() => { console.log('polling...'); ・ ・ ・ if (stopPolling) { clearInterval(intervalId); } }, 1000);
ここで定義した intervalId
は関数内からでも参照できるので、このように setInterval
内で条件を満たしたらポーリングをやめるように処理が行える。
例えば以下のようなコードを実行してみると、10回だけ繰り返し処理が行われているのが分かる。
let count = 0; const intervalId = setInterval(() => { console.log('polling...'); count++; if (count === 10) { clearInterval(intervalId); console.log('finish'); } }, 500);
以上、JavaScript備忘録でした。