> Влияет ли добавление async/await на порядок вывода в консоли? (JavaScript)

Уровень: senior · Роль: frontend · Категория: Технические вопросы

Компании: DigitalSail

Стек: JavaScript

> Пример ответа

Да, добавление async/await может повлиять на порядок вывода в консоли, так как await приостанавливает выполнение асинхронной функции до разрешения промиса, но не блокирует весь поток. Рассмотрим пример:

JAVASCRIPT
console.log('1');
async function test() {
console.log('2');
await Promise.resolve();
console.log('4');
}
test();
console.log('3');

Вывод: 1, 2, 3, 4.
Почему? Код выполняется синхронно до первого await. После await оставшаяся часть функции помещается в микрозадачу (microtask queue) и выполняется после завершения текущего синхронного кода (включая console.log('3')). Таким образом, async/await меняет порядок, делая код после await асинхронным, что может быть неочевидно без понимания event loop.

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью