Встречается на собеседованиях • сегодня

Зачем нужен setTimeout с задержкой в 0 миллисекунд

setTimeout(fn, 0) используется для отложенного выполнения кода до завершения текущего call stack и выполнения задач из очереди микрозадач (microtasks). Это позволяет:

  1. Дать браузеру выполнить отрисовку (repaint) перед выполнением тяжелых операций
  2. Разбить длительные задачи на части, чтобы не блокировать основной поток
  3. Обработать накопленные события (например, клики) перед выполнением кода

Пример:

javascript
console.log('Start');
setTimeout(() => console.log('Timeout'), 0);
Promise.resolve().then(() => console.log('Promise'));
console.log('End');

// Вывод:
// Start
// End
// Promise
// Timeout

Здесь setTimeout с 0 задержкой выполнится после микрозадач (Promise) и текущего call stack.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы