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


Что делают метатеги <meta charset="UTF-8">, <meta viewport>, <meta http-equiv>?

Метатеги — это элементы HTML, которые предоставляют информацию о странице браузеру и поисковым системам. Например, <meta charset="UTF-8"> задает кодировку символов, что важно для корректного отображения текста. <meta name="viewport"> используется для управления отображением страницы на мобильных устройствах, позволяя адаптировать содержимое под размеры экрана. Метатеги, такие как <meta http-equiv>, могут задавать параметры, связанные с заголовками HTTP, что также способствует оптимизации страницы.

Подробнее

Как использовать атрибут srcset с тегом <img>?

Атрибут srcset у тега <img> позволяет задать несколько версий изображения с разными разрешениями или размерами. Браузер автоматически выбирает наиболее подходящую версию в зависимости от плотности пикселей экрана и ширины экрана. В комбинации с атрибутом loading="lazy" можно использовать ленивую загрузку изображений для оптимизации производительности страницы.

Подробнее

Set. В чем особенность? Какие свойства и методы есть? Как перебрать?

Set — это коллекция уникальных значений, которая автоматически удаляет дубликаты. Каждый элемент в Set хранится только один раз, независимо от того, сколько раз он был добавлен. Set имеет методы для добавления, удаления и проверки значений, такие как add(), delete(), has() и clear(). Перебирать элементы в Set можно с помощью метода forEach() или цикла for...of.

Подробнее

WeakSet. В чем особенность? Какие свойства и методы есть? Как перебрать?

WeakSet — это коллекция уникальных объектов, где каждый объект хранится с использованием слабой ссылки. Главная особенность WeakSet заключается в том, что он не удерживает ссылки на свои элементы, что позволяет сборщику мусора автоматически удалять объекты, если на них больше нет ссылок. Методы WeakSet включают add(), delete() и has(), однако его нельзя перебрать, так как WeakSet не предоставляет итераторов.

Подробнее

Что такое setTimeout и setInterval?

setTimeout выполняет указанную функцию один раз через заданное время, а setInterval — периодически, с указанным интервалом. Оба метода работают асинхронно, что значит, что они не блокируют основной поток выполнения программы. Чтобы остановить выполнение setInterval, нужно вызвать clearInterval, а для остановки отложенного вызова setTimeout — clearTimeout.

Подробнее

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

Можете привести пример counter-increment и counter-reset в CSS для создания автоматической нумерации на веб-странице?

Что такое команды git reset --mixed и git merge --abort?

Как написать React-компонент, чтобы при монтировании запускался setInterval, выводящий в консоль "Hello world" каждые 10 секунд? Что важно учесть при такой реализации с setInterval?

Как объединить обновление состояния для нескольких setState?

  • Рейтинг:

    3

  • Сложность:

    7

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

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

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

    5

  • Сложность:

    10

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

С помощью counter-reset мы создаем новый счетчик, а counter-increment увеличиваем его значение для определенных элементов. Например, мы можем использовать эти свойства для автоматической нумерации заголовков на странице. Счетчик может быть сброшен при помощи counter-reset, а при каждом появлении элемента с counter-increment счетчик будет увеличиваться.

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

    2

  • Сложность:

    7

git reset --mixed: отменяет изменения, которые были добавлены в индекс, но сохраняет изменения в рабочем каталоге.

git merge --abort: отменяет слияние, которое в данный момент находится в процессе, и возвращает репозиторий в состояние до начала слияния.

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

    5

  • Сложность:

    6

useEffect(() => {
  const intervalId = setInterval(() => {
    console.log('Hello world');
  }, 10000);
  return () => clearInterval(intervalId); // Очистка при размонтировании
}, []);

Важно:

  1. Очистка в return — иначе интервал будет работать после удаления компонента.

  2. Пустой массив зависимостей [] — чтобы эффект выполнился только при монтировании.

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

    2

  • Сложность:

    8

React группирует несколько вызовов setState, происходящих в одном синхронном событии, в одно обновление, чтобы избежать лишних перерендеров. Это поведение называется батчинг, и оно работает по умолчанию в обработчиках событий React, но в асинхронном коде раньше требовалось вручную вызывать flushSync или unstable_batchedUpdates.

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

    2

  • Сложность:

    3

  • Рейтинг:

    2

  • Сложность:

    4

  • Рейтинг:

    5

  • Сложность:

    7

  • Рейтинг:

    5

  • Сложность:

    8

  • Рейтинг:

    3

  • Сложность:

    5