Встречается на собеседованиях • сегодня
Что раньше выйдет из Event Loop Promise или setTimeout
В Event Loop микротаски (Promise) имеют приоритет над макротасками (setTimeout). Даже если setTimeout с таймаутом 0 будет вызван раньше Promise, его колбэк попадёт в очередь макротасок и выполнится только после обработки всех микротасок.
Пример:
javascript
setTimeout(() => console.log('timeout'), 0);
Promise.resolve().then(() => console.log('promise'));
// Вывод:
// promise
// timeoutПорядок выполнения:
- Синхронный код выполняется сразу
- Микротаски (Promise) выполняются перед следующей макротаской
- Макротаски (setTimeout) выполняются после всех текущих микротасок

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы