Що покаже setTimeout?
У Ð½Ð°Ð²ÐµÐ´ÐµÐ½Ð¾Ð¼Ñ Ð½Ð¸Ð¶Ñе ÐºÐ¾Ð´Ñ Ð·Ð°Ð¿Ð»Ð°Ð½Ð¾Ð²Ð°Ð½Ð¾ виклик setTimeout, поÑÑм виконÑÑÑÑÑÑ Ð²Ð°Ð¶ÐºÐ¸Ð¹ ÑозÑаÑ
Ñнок, на Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñкого поÑÑÑбно бÑлÑÑе 100 мÑ.
Ðоли запÑÑÑиÑÑÑÑ Ð·Ð°Ð¿Ð»Ð°Ð½Ð¾Ð²Ð°Ð½Ð° ÑÑнкÑÑÑ?
- ÐÑÑÐ»Ñ ÑиклÑ.
- Ðо ÑиклÑ.
- Ðа поÑаÑÐºÑ ÑиклÑ.
Що бÑде показÑваÑи alert?
let i = 0;
setTimeout(() => alert(i), 100); // ?
// пÑипÑÑÑимо, Ñо ÑÐ°Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÑÑÑÑ ÑÑнкÑÑÑ > 100 мÑ
for(let j = 0; j < 100000000; j++) {
i++;
}
ÐÑдÑ-Ñкий setTimeout запÑÑкаÑимеÑÑÑÑ Ð»Ð¸Ñе пÑÑÐ»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð½Ñ Ð¿Ð¾ÑоÑного кодÑ.
i бÑде оÑÑаннÑм: 100000000.
let i = 0;
setTimeout(() => alert(i), 100); // 100000000
// пÑипÑÑÑимо, Ñо ÑÐ°Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÑÑÑÑ ÑÑнкÑÑÑ > 100 мÑ
for(let j = 0; j < 100000000; j++) {
i++;
}