レッスンに戻る

setTimeout は何を表示しますか。

重要度: 5

下記のコードでは、setTimeoutコールがスケジュールされ、その後、完了するまでに100ミリ秒以上かかる大量の計算が実行されます。

スケジュールされた関数はいつ実行されますか。

  1. ループの後。
  2. ループの前。
  3. ループの開始時。

alertは何を表示しますか。

let i = 0;

setTimeout(() => alert(i), 100); // ?

// assume that the time to execute this function is >100ms
for(let j = 0; j < 100000000; j++) {
  i++;
}

setTimeoutは、現在のコードが完了した後にのみ実行されます。

iは最後のものになります: 100000000

let i = 0;

setTimeout(() => alert(i), 100); // 100000000

// assume that the time to execute this function is >100ms
for(let j = 0; j < 100000000; j++) {
  i++;
}