Что такое requestAnimationFrame

Ответ

requestAnimationFrame — это метод JavaScript, который позволяет выполнять анимации и другие операции, требующие перерисовки экрана, синхронизированными с частотой обновления браузера (обычно 60 FPS).

Преимущества:

  • Оптимизирует производительность, избегая лишних перерисовок.
  • Автоматически приостанавливается при скрытии вкладки.

Пример использования:

function animate() {
  // Логика анимации
  element.style.left = (parseInt(element.style.left) + 1) + 'px';

  // Запускаем следующий кадр
  requestAnimationFrame(animate);
}

// Старт анимации
requestAnimationFrame(animate);

Альтернатива: setTimeout/setInterval, но они не синхронизированы с рендерингом и могут вызывать лаги.