setTimeout は何を表示しますか。
重要度: 5
下記のコードでは、setTimeout
コールがスケジュールされ、その後、完了するまでに100ミリ秒以上かかる大量の計算が実行されます。
スケジュールされた関数はいつ実行されますか。
- ループの後。
- ループの前。
- ループの開始時。
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++;
}