Язык javascript ч 1

Page 413

11 } 12 13 f(); Решение Вызов alert(i) в setTimeout выведет 100000000, так как срабатывание будет гарантировано после окончания работы текущего кода. Очередь до запланированных вызовов доходит всегда лишь после окончания текущего скрипта. Можете проверить это запуском:

01 setTimeout(function() { 02 alert(i); 03 }, 10); 04 05 var i; 06 07 function f() { 08 // точное время выполнения не играет роли 09 // здесь оно заведомо больше задержки setTimeout 10 for(i=0; i<1e8; i++) f[i%10] = i; 11 } 12 13 f(); Ответ на второй вопрос: 3 (сразу после). Вызов планируется на 10мс от времени вызова setTimeout, но функция выполняется больше, чем 10мс, поэтому к моменту ее окончания время уже подошло и отложенный вызов выполняется тут же. [Открыть задачу в новом окне] 5

Выполнение функции f занимает примерно 1 секунду. Что выведет alert в коде ниже? Когда сработает setInterval? Выберите нужный вариант:

1. До выполнения f, во время и после, перемежаясь с выполнением f.


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.