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


Объясните разницу между последовательным и параллельным выполнением асинхронных функций. Как работают Promise.all() и Promise.allSettled()?

Последовательное выполнение асинхронных функций означает, что каждая следующая функция начинается только после завершения предыдущей, тогда как параллельное выполнение позволяет нескольким функциям выполняться одновременно.

Метод Promise.all() запускает несколько промисов параллельно и возвращает результат, когда все они успешно завершатся, а Promise.allSettled() возвращает результат независимо от того, завершился ли каждый промис успехом или ошибкой.

Подробнее

Как защитить данные в LocalStorage от стороннего JS?

Полностью защитить LocalStorage от чтения/изменения сторонним JS нельзя, так как он доступен в том же контексте. Можно уменьшить риски: хранить только нечувствительные данные, использовать шифрование или HttpOnly-куки для критичной информации.

Подробнее

Что такое Web Vitals?

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

  • LCP (Largest Contentful Paint) — время загрузки самого большого элемента.

  • FID (First Input Delay) — задержка перед реакцией на первое действие пользователя.

  • CLS (Cumulative Layout Shift) — неожиданные смещения элементов на странице.

Подробнее

Какие хранилища подходят для больших данных (LocalStorage, IndexedDB)?

Для больших объемов данных лучше использовать IndexedDB, так как оно поддерживает асинхронную работу и хранение структурированных объектов. LocalStorage подходит для небольших объемов (до ~5 МБ) и синхронных операций.

Подробнее

Как на фронтенде реализуется авторизация? (Хранение access/refresh токенов в Cookies / LocalStorage, отправка токена в запросах, обновление токена)

Access token хранится в памяти или LocalStorage для доступа к API. Refresh token хранится в HttpOnly cookie для безопасного обновления. Токен автоматически добавляется в заголовки запросов и обновляется при истечении.

Подробнее

Где хранить кэшированные данные? (LocalStorage, IndexedDB). Что делать, если IndexedDB не поддерживается?

Чем localStorage отличается от sessionStorage?

Что делает оператор ?? (nullish coalescing)?

Что такое template literals и зачем они нужны?

Что такое useSyncExternalStore и для чего он нужен?

  • Рейтинг:

    3

  • Сложность:

    7

Для кэширования данных используйте LocalStorage для небольших текстовых данных (до 5MB), IndexedDB для больших объемов и сложных структур. Если IndexedDB не поддерживается, можно использовать LocalStorage как fallback, либо реализовать полифилл для IndexedDB. Для совсем старых браузеров можно использовать cookies или серверное хранение.

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

    5

  • Сложность:

    4

localStorage и sessionStorage — это синхронные хранилища данных в браузере. Главное отличие — время жизни данных. localStorage сохраняет данные между перезагрузками и закрытием браузера. sessionStorage очищается при закрытии вкладки. Оба хранилища доступны только в рамках одного origin.

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

    5

  • Сложность:

    3

Оператор ?? возвращает правый операнд, только если левый равен null или undefined. Во всех остальных случаях возвращается левое значение. В отличие от ||, он не считает 0, false или пустую строку ошибочными значениями. Это делает ?? безопасным для задания значений по умолчанию.

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

    4

  • Сложность:

    3

Template literals — это строки в обратных кавычках (`), которые поддерживают интерполяцию выражений и многострочный текст. Они позволяют вставлять переменные и выражения прямо в строку через ${}. Это делает код короче и читабельнее по сравнению с конкатенацией. Также они удобны для HTML-шаблонов и логирования.

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

    4

  • Сложность:

    7

useSyncExternalStore — это хук React для безопасного подключения внешнего состояния к рендерингу. Он позволяет подписаться на внешний стор и гарантирует, что компонент всегда рендерится с актуальными данными. Этот хук решает проблемы, которые возникают при ручных подписках в условиях concurrent rendering и Strict Mode. Его используют как основу для state-менеджеров.

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

    3

  • Сложность:

    7

  • Рейтинг:

    4

  • Сложность:

    7

  • Рейтинг:

    3

  • Сложность:

    9

  • Рейтинг:

    2

  • Сложность:

    8

  • Рейтинг:

    3

  • Сложность:

    8