Логотип 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


Что такое Progressive Enhancement и Graceful Degradation? Как HTML может поддерживать оба подхода?

Progressive Enhancement и Graceful Degradation — это два подхода к веб-разработке, направленные на создание адаптивных и доступных веб-приложений. 

Progressive Enhancement: Старт с базовой версии и добавление улучшений для современных браузеров.

Graceful Degradation: Старт с полной версии и адаптация для старых браузеров.

Подробнее

Что такое race condition при запросах?

Race condition — это ситуация, когда несколько запросов выполняются параллельно, и результат более медленного запроса перезаписывает результат более быстрого. В итоге состояние приложения может оказаться некорректным. Это часто происходит при быстрых изменениях параметров запроса. Проблема связана не со скоростью сети, а с порядком завершения запросов.

Подробнее

Как возникает race condition в React?

Race condition в React возникает, когда несколько асинхронных запросов выполняются параллельно и обновляют одно и то же состояние. React не знает, какой запрос является “последним” или актуальным. В результате более старый запрос может завершиться позже и перезаписать более свежие данные. Это приводит к отображению устаревшей информации в UI.

Подробнее

Как cleanup-функция помогает решить race condition?

Cleanup-функция в useEffect позволяет отменить или игнорировать результат старого запроса, когда эффект больше не актуален. Она вызывается перед повторным запуском эффекта или при размонтировании компонента. Благодаря этому устаревшие запросы не могут обновить состояние. Это один из базовых способов защиты от race condition.

Подробнее

Что делает Promise.race?

Promise.race — это статический метод, который принимает массив (или итерируемый объект) промисов и возвращает новый промис. Этот новый промис завершается (разрешается или отклоняется) с тем же результатом, что и первый завершившийся промис из переданного списка. Это полезно для реализации таймаутов или когда нужен результат от самого быстрого источника данных.
Подробнее

Почему код с callback может работать некорректно в асинхронном контексте?

Какие проблемы могут возникать при работе с асинхронным обновлением состояния?

Как решить проблему race condition при отправке запросов из input?

  • Рейтинг:

    4

  • Сложность:

    3

Callback-функция может работать некорректно в асинхронном контексте из-за замыканий и состояния гонки. Если callback использует переменные из внешней области видимости, их значение может измениться до вызова callback, так как асинхронная операция завершится позже. Например, в цикле с асинхронными вызовами все callback могут получить одно и то же значение последней итерации. Это происходит из-за того, что переменная цикла изменяется синхронно, а callback вызываются асинхронно.
Подробнее
  • Рейтинг:

    4

  • Сложность:

    5

При асинхронном обновлении состояния в React могут возникать проблемы с устаревшими данными, когда замыкание захватывает старое значение. Также возможны race conditions, если несколько асинхронных операций обновляют состояние одновременно. Для решения нужно использовать функциональную форму setState или useReducer.
Подробнее
  • Рейтинг:

    4

  • Сложность:

    5

Race condition возникает, когда несколько асинхронных запросов отправляются последовательно, но ответы приходят в другом порядке. Это приводит к отображению устаревших данных. Решение — использовать debounce для задержки отправки запроса до завершения ввода, а также отменять предыдущие запросы с помощью AbortController или проверять актуальность ответа по идентификатору запроса.
Подробнее
  • Рейтинг:

    2

  • Сложность:

    5

  • Рейтинг:

    4

  • Сложность:

    7

  • Рейтинг:

    5

  • Сложность:

    7

  • Рейтинг:

    5

  • Сложность:

    8

  • Рейтинг:

    4

  • Сложность:

    3