Определение порядка вывода в консоль (пример 88)

Никакого вывода не будет: все строки примера закомментированы. Комментарии не регистрируют ни таймеры, ни обработчики Promise.

Короткий ответ

Что ответить на собеседовании

Никакого вывода не будет: все строки примера закомментированы. Комментарии не регистрируют ни таймеры, ни обработчики Promise.

Подробный разбор

Ответ с пояснениями

Условие

Укажите, какие значения и в каком порядке появятся в консоли при выполнении следующего кода:

 // console.log(1);

// setTimeout(() => console.log(2));

// Promise.resolve().then(() => console.log(3));

// Promise.resolve().then(() => setTimeout(() => console.log(4)));

// Promise.resolve().then(() => console.log(5));

// setTimeout(() => console.log(6));

// console.log(7);

Ответ

Никакого вывода не будет: все строки примера закомментированы. Комментарии не регистрируют ни таймеры, ни обработчики Promise.

Если убрать // со всех строк, порядок будет 1, 7, 3, 5, 2, 6, 4. Сначала выполняется синхронный код, затем микрозадачи с 3, постановкой таймера 4 и печатью 5. После них запускаются таймеры 2 и 6, зарегистрированные раньше таймера 4. Но это результат изменённого варианта, а не исходного закомментированного фрагмента.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее