Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
Что такое Progressive Enhancement и Graceful Degradation? Как HTML может поддерживать оба подхода?
Progressive Enhancement и Graceful Degradation — это два подхода к веб-разработке, направленные на создание адаптивных и доступных веб-приложений.
Progressive Enhancement: Старт с базовой версии и добавление улучшений для современных браузеров.
Graceful Degradation: Старт с полной версии и адаптация для старых браузеров.
Что такое <template> и <slot>, как их использовать при создании кастомных элементов и динамических структур на странице?
<template> — это специальный элемент HTML, который позволяет создавать фрагменты кода, которые не отображаются на странице до тех пор, пока они не будут активированы с помощью JavaScript. Элемент <slot> используется в кастомных элементах для определения места, где можно вставить содержимое, переданное элементу. Эти элементы помогают разработчикам создавать более гибкие и переиспользуемые компоненты, которые могут динамически изменять свое содержимое в зависимости от контекста.
Как работает HTML Custom Elements API, и как можно создать и зарегистрировать собственные элементы?
HTML Custom Elements API позволяет разработчикам создавать собственные HTML-элементы, которые ведут себя как стандартные элементы, но могут иметь свою уникальную логику и стиль. Чтобы создать кастомный элемент, необходимо определить класс, который наследует от HTMLElement, и зарегистрировать его с помощью customElements.define(). Эти элементы могут быть использованы на странице так же, как и стандартные HTML-теги. Custom Elements расширяют возможности HTML, делая его более гибким для современных веб-приложений.
Почему Хук useMemo в React не используется для замены shouldComponentUpdate?
Хук useMemo используется для оптимизации производительности, запоминая результат вычисления и избегая его повторного выполнения при неизменных зависимостях. Однако он не предназначен для управления рендерингом компонентов, как это делает shouldComponentUpdate, который отвечает за решение о необходимости обновления компонента.
Отличие useMemo от useCallback.
useMemo и useCallback оба предназначены для оптимизации производительности в React, но служат разным целям. useMemo запоминает вычисленные значения, а useCallback запоминает функции. Это позволяет избежать лишних вычислений и создания функций при каждом рендере компонента.
Для чего используется memo в React?
Что такое temporal dead zone (временная мёртвая зона) в JavaScript и как она влияет на переменные?
Можете привести пример counter-increment и counter-reset в CSS для создания автоматической нумерации на веб-странице?
Как работают шаблонные литеральные типы (template literal types) в TypeScript?
Как отличить git clone от git remote?
Рейтинг:
5
Сложность:
6
React.memo — это функция высшего порядка, которая позволяет мемоизировать компоненты, предотвращая их повторный рендеринг, если их пропсы не изменились. Это может улучшить производительность, особенно в больших приложениях с множеством компонентов. Используйте React.memo, когда у вас есть компоненты, которые принимают неизменяемые пропсы и не зависят от глобального состояния.
Рейтинг:
2
Сложность:
7
Temporal dead zone (TDZ) — это период времени от начала области видимости переменной, объявленной с помощью let или const, до момента её инициализации. В TDZ переменные недоступны и попытка к ним обратиться вызовет ошибку. Это помогает избежать непредсказуемого поведения при работе с переменными.
Рейтинг:
5
Сложность:
10
Эти свойства позволяют динамически увеличивать счетчики для элементов, таких как заголовки, списки и другие элементы, что делает нумерацию более гибкой и управляемой.
С помощью counter-reset мы создаем новый счетчик, а counter-increment увеличиваем его значение для определенных элементов. Например, мы можем использовать эти свойства для автоматической нумерации заголовков на странице. Счетчик может быть сброшен при помощи counter-reset, а при каждом появлении элемента с counter-increment счетчик будет увеличиваться.
Рейтинг:
4
Сложность:
7
Шаблонные литеральные типы позволяют создавать новые строковые типы с использованием шаблонных строк. Это мощный инструмент для создания более точных и динамических строковых типов, например, для создания строго типизированных маршрутов или переменных.
Рейтинг:
2
Сложность:
6
git clone используется для создания копии удалённого репозитория на вашем локальном компьютере, включая все его коммиты и историю.
git remote управляет удалёнными репозиториями, позволяя добавлять, удалять или изменять удалённые URL-адреса для вашего локального репозитория.
Рейтинг:
2
Сложность:
5
Рейтинг:
2
Сложность:
5
Рейтинг:
2
Сложность:
6
Рейтинг:
5
Сложность:
7
Рейтинг:
5
Сложность:
7