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

Когда выполняется Request Idle Callback

requestIdleCallback выполняется, когда основной поток простаивает, т.е. после завершения текущей работы (рендеринга, обработки событий и т.д.). Это позволяет выполнять низкоприоритетные задачи без ущерба для производительности.

Пример:

javascript
function processBackgroundTask(deadline) {
  while (deadline.timeRemaining() > 0) {
    // Выполняем фоновую задачу
  }
  if (естьЕщеРабота) {
    requestIdleCallback(processBackgroundTask);
  }
}

requestIdleCallback(processBackgroundTask);

Ключевые моменты:

  • Колбэк получает IdleDeadline с методом timeRemaining()
  • Можно проверить didTimeout, если был указан таймаут
  • Не гарантирует выполнение - браузер может его пропустить
  • Альтернатива - setTimeout с большим таймаутом
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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