Логотип 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: Старт с полной версии и адаптация для старых браузеров.

Подробнее

Как работают Content Security Policy (CSP) заголовки и атрибуты вроде integrity в теге <script>?

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

Атрибут integrity в теге <script> используется для проверки целостности загружаемого скрипта, чтобы убедиться, что он не был изменен. Если хэш скрипта не совпадает с указанным значением, браузер отклонит его загрузку.

Подробнее

Как работает HTML Custom Elements API, и как можно создать и зарегистрировать собственные элементы?

HTML Custom Elements API позволяет разработчикам создавать собственные HTML-элементы, которые ведут себя как стандартные элементы, но могут иметь свою уникальную логику и стиль. Чтобы создать кастомный элемент, необходимо определить класс, который наследует от HTMLElement, и зарегистрировать его с помощью customElements.define(). Эти элементы могут быть использованы на странице так же, как и стандартные HTML-теги. Custom Elements расширяют возможности HTML, делая его более гибким для современных веб-приложений.

Подробнее

Что такое Content Delivery Network (CDN) и как правильно подключать ресурсы HTML через CDN для повышения производительности?

Content Delivery Network (CDN) — это сеть серверов, расположенных по всему миру, которые хранят копии статических ресурсов веб-сайта, таких как изображения, CSS и JavaScript. Подключение ресурсов через CDN позволяет загружать их с ближайшего сервера, что ускоряет время загрузки страницы и снижает нагрузку на основной сервер. Для подключения через CDN обычно используют URL внешних ресурсов, например:

<script src="https://cdn.example.com/library.js"></script>
Подробнее

Особенности стрелочных функций (this, arguments) и как изменить контекст?

Стрелочные функции не создают собственного контекста this и используют значение this из внешней функции. Они также не имеют объекта arguments, что делает их менее гибкими в некоторых ситуациях. Контекст стрелочной функции изменить нельзя, так как он жёстко привязан к внешней области видимости.

Подробнее

Что такое цикл событий (event loop) и как он работает?

Как работает event delegation, и как оно может повлиять на производительность приложений?

Как реализовать Content Security Policy (CSP) для защиты веб-приложений на JavaScript?

Объясните влияние блокирующих операций на Event Loop и как их избежать.

Является ли код внутри тега <script> макрозадачей?

  • Рейтинг:

    5

  • Сложность:

    7

Цикл событий (event loop) — это механизм в JavaScript, который управляет выполнением кода, обработкой событий и выполнением задач из очереди (callback-ов). Он позволяет JavaScript быть асинхронным, обрабатывая задачи, когда основная программа уже завершена. Когда вызывается асинхронная операция, она отправляется в очередь, а цикл событий отслеживает и выполняет задачи, как только главный поток освобождается.

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

    3

  • Сложность:

    5

Event delegation — это техника, при которой событие обрабатывается на родительском элементе, а не на конкретных дочерних элементах. Это работает благодаря всплытию событий в JavaScript, когда событие, происходящее на элементе, поднимается по дереву DOM до его предков. Делегирование событий улучшает производительность, так как позволяет минимизировать количество обработчиков на странице, особенно если элементы создаются динамически.

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

    3

  • Сложность:

    7

Content Security Policy (CSP) — это механизм безопасности, который позволяет разработчикам контролировать, какие ресурсы могут быть загружены и выполнены на веб-странице. CSP реализуется с помощью HTTP-заголовка Content-Security-Policy, где можно указать разрешенные источники скриптов, стилей и других ресурсов. Это помогает предотвратить загрузку вредоносного контента и снижает риск атак типа XSS.

Чтобы внедрить CSP, достаточно добавить соответствующий заголовок на сервер или в мета-тег на странице.

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

    3

  • Сложность:

    7

Блокирующие операции в JavaScript — это те, которые останавливают выполнение кода и не позволяют Event Loop обрабатывать другие задачи. Это может привести к зависанию интерфейса пользователя и снижению отзывчивости приложения.

Чтобы избежать блокирующих операций, используйте асинхронные функции, такие как setTimeout, Promise и API, позволяющие выполнять задачи в фоновом режиме, не блокируя основной поток выполнения.

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

    3

  • Сложность:

    8

Код внутри тега <script> выполняется синхронно и не является макрозадачей. Когда браузер загружает страницу, он сначала выполняет весь синхронный код, содержащийся в теге <script>, и только после завершения этого выполнения переходит к обработке других задач в очереди, таких как макрозадачи и события. Макрозадачи включают асинхронные операции, такие как setTimeout или обработчики событий.

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

    2

  • Сложность:

    5

  • Рейтинг:

    3

  • Сложность:

    6

  • Рейтинг:

    2

  • Сложность:

    6

  • Рейтинг:

    3

  • Сложность:

    5

  • Рейтинг:

    4

  • Сложность:

    7