お世話になっております。i++
の役割が今一つ理解できていないです。
1秒後ごとにsetTimeout
が処理をし、何回でタイマーを止めるかlet i
が使われている。
let i
を一番上で宣言しているのは、スコープの関係でshowTime();
まで有効にさせているため。
【試してみたこと】
i++;
を削除すると止まることなく動き続ける。
→ i++
は一体何を行っているのか。i++;
をすることでなぜ3回でタイマーが止まるのか。
i++;
をif
の中に移動させても結果は同じ。
→なぜif
の上にi++
は位置するのか
let i = 0;
function showTime() {
console.log(new Date());
const timeoutId = setTimeout(showTime, 1000);
i++;
if (i > 2) {
clearTimeout(timeoutId);
}
}
showTime();
for
文で言うと、この部分を指していると考えてよろしいのでしょうか。
for (let i = 0; i <= 2; i++ ←ここ ;) { }
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?