Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Специализация

Python Backend Developer

Java Backend Developer

Node.js Backend Developer

Golang Backend Developer

React Frontend Developer

Посмотреть все

Выберите навыки

React

React

JavaScript

JavaScript

Git

Git

Redux

Redux

Webpack

Webpack

Посмотреть все

Сложность

1-3

4-6

7-8

9-10

Рейтинг вопросов

1

2

3

4

5

Подпишись на React Developer в телеграм

Вопросы React Frontend Developer


Что такое requestAnimationFrame?

requestAnimationFrame — это метод в JavaScript, который сообщает браузеру, что нужно выполнить анимацию, и просит браузер вызвать указанную функцию для обновления анимации перед перерисовкой. Он синхронизируется с частотой обновления экрана, что делает анимацию плавной и оптимизированной. Вместо использования setTimeout или setInterval для анимации, requestAnimationFrame обеспечивает лучшее управление производительностью и энергопотреблением.

Подробнее

Объясните защиту от Cross-Site Scripting (XSS) и Cross-Site Request Forgery (CSRF) в контексте JavaScript.

Cross-Site Scripting (XSS) — это атака, при которой злоумышленник вставляет вредоносный скрипт на веб-страницу, что позволяет ему получить доступ к данным пользователя.

Защита от XSS включает экранирование пользовательского ввода и применение Content Security Policy (CSP).

Cross-Site Request Forgery (CSRF) — это атака, при которой злоумышленник заставляет пользователя выполнить нежелательное действие на сайте, где он аутентифицирован.

Защита от CSRF включает использование уникальных токенов для подтверждения запросов и проверки заголовков.

Подробнее

Что такое pull request и когда его лучше использовать?

Pull request (PR) — это запрос на слияние изменений из одной ветки в другую, обычно с целью обсудить и проверить изменения перед их интеграцией в основную ветку. PR используется, когда разработчик хочет предложить свои изменения команде для проверки и обсуждения.

Подробнее

Отличие анимации при использовании requestAnimationFrame и SetInterval

setInterval выполняет функцию с фиксированной задержкой, не учитывая частоту обновления экрана, что может приводить к пропуску кадров и лишним вычислениям. requestAnimationFrame синхронизирует выполнение кода анимации с частотой обновления экрана (обычно 60 кадров/с), что делает анимацию плавной и эффективной. Он также автоматически останавливается, когда пользователь переходит на другую вкладку, экономя ресурсы. Для плавных анимаций всегда следует предпочитать requestAnimationFrame.

Подробнее

Когда используют requestAnimationFrame?

requestAnimationFrame используют для плавной анимации и визуальных обновлений, синхронизированных с частотой обновления экрана. Он обеспечивает оптимальную производительность, автоматически приостанавливая выполнение когда страница не видна, и вызывая колбэк перед перерисовкой браузера.

Подробнее

Как обычно организуется процесс merge request во frontend-команде?

Как requestAnimationFrame связан с Event Loop?

Что произойдет, если убрать requestAnimationFrame из цикла рендеринга?

Можно ли сделать анимацию только на Promise?

  • Рейтинг:

    4

  • Сложность:

    6

Merge request используется для проверки и обсуждения изменений перед попаданием в основную ветку. Разработчик создаёт ветку, вносит изменения и открывает MR. Код проходит review и автоматические проверки. После одобрения изменения мержатся. Это снижает количество ошибок в основной ветке.

Подробнее
  • Рейтинг:

    3

  • Сложность:

    5

requestAnimationFrame — это API браузера, который ставит колбэк в специальную очередь, связанную с циклом рендеринга. Event Loop управляет выполнением задач из разных очередей: макротасков, микротасков и задач, связанных с отрисовкой. Колбэк requestAnimationFrame выполняется непосредственно перед этапом обновления стилей и компоновки (Layout/Paint) в цикле рендеринга, что обеспечивает плавную анимацию, синхронизированную с частотой обновления экрана.
Подробнее
  • Рейтинг:

    4

  • Сложность:

    3

Без requestAnimationFrame анимация будет выполняться в произвольные моменты времени, не синхронизированные с частотой обновления экрана браузера. Это может привести к "дрожанию" (jank), пропуску кадров и повышенному потреблению ресурсов процессора. Анимация может работать слишком быстро или слишком медленно в зависимости от нагрузки системы. requestAnimationFrame гарантирует, что функция обновления вызывается перед каждой перерисовкой экрана, обеспечивая плавность.
Подробнее
  • Рейтинг:

    3

  • Сложность:

    4

Нет, анимацию только на Promise сделать нельзя. Promise управляет порядком выполнения асинхронных операций, но не предоставляет механизма для плавного изменения состояния во времени. Для анимации требуется requestAnimationFrame или setInterval, которые вызывают обновление кадра. Promise можно использовать для организации последовательности анимаций, но не для самого рендеринга.
Подробнее
  • Рейтинг:

    3

  • Сложность:

    8

  • Рейтинг:

    3

  • Сложность:

    8

  • Рейтинг:

    3

  • Сложность:

    4

  • Рейтинг:

    5

  • Сложность:

    4

  • Рейтинг:

    4

  • Сложность:

    6