Специализация
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 в телеграм
Что такое Canvas?
<canvas> — это HTML-тег, который используется для рисования 2D и 3D графики через JavaScript. Сам по себе <canvas> не содержит графики; для её создания используется JavaScript API. Этот элемент полезен для анимаций, игр и динамического рендеринга изображений, но он требует программирования для каждой детали.
Что такое ARIA (Accessible Rich Internet Applications), и как правильно использовать атрибуты ARIA для улучшения доступности?
ARIA (Accessible Rich Internet Applications) — это набор атрибутов, который помогает разработчикам улучшать доступность сложных веб-приложений для людей с ограниченными возможностями. Атрибуты ARIA могут быть добавлены к HTML-элементам, чтобы описать их роли, состояния и свойства для экранных читалок и других вспомогательных технологий. Например, атрибуты ARIA могут помочь определить, что элемент является кнопкой или заголовком, и предоставить информацию о его состоянии (например, "раскрыто" или "закрыто"). Правильное использование ARIA делает контент более понятным и доступным для всех пользователей.
Как использовать элемент <canvas> для рисования графики на стороне клиента? В каких сценариях это применимо?
Элемент <canvas> используется для рисования графики с помощью JavaScript на веб-странице. С его помощью можно создавать как простые фигуры, так и сложные анимации и игры. Он не имеет встроенного содержания, и все графические элементы рисуются динамически через методы, такие как fillRect() для рисования прямоугольников и beginPath() для создания линий и кривых.
Какие преимущества предоставляет оператор spread по сравнению с альтернативными подходами, такими как метод concat() для массивов или Object.assign() для объектов?
Оператор spread (...) позволяет легко копировать и объединять массивы и объекты с помощью более лаконичного и читаемого синтаксиса. В отличие от метода concat(), который требует явного указания массива для объединения, и Object.assign(), который может затруднить копирование объектов с вложенными структурами, оператор spread делает эти операции интуитивно понятными и менее подверженными ошибкам. Это упрощает написание кода и повышает его читаемость.
Есть ли у стрелочной функции методы call, apply и bind?
Стрелочные функции могут использовать методы call, apply и bind, но эти методы не изменяют контекст this внутри стрелочной функции. В отличие от обычных функций, стрелочные функции наследуют значение this из своей внешней области видимости (лексический контекст), и методы call, apply и bind не могут его изменить.
Методы call, apply, bind — для чего они нужны?
Для чего нужны callback и что такое Callback Hell?
Как обрабатывать ошибки в JavaScript?
Как работает inline-кеширование (inline caching) и почему оно важно для производительности?
Отличие useMemo от useCallback.
Рейтинг:
4
Сложность:
6
Методы call и apply позволяют вызвать функцию с заданным значением this, но call передаёт аргументы через запятую, а apply — в виде массива. Метод bind возвращает новую функцию с фиксированным значением this, которая может быть вызвана позже. Эти методы полезны для контроля контекста выполнения функции, особенно при работе с методами объектов.
Рейтинг:
5
Сложность:
6
Колбэк (callback) — это функция, которая передается другой функции в качестве аргумента и вызывается позже, когда произойдет какое-то событие или завершится операция. Проблема "Callback Hell" возникает, когда функции начинают вкладываться друг в друга слишком глубоко, что делает код трудночитаемым и сложным для поддержки.
Рейтинг:
4
Сложность:
5
В JavaScript ошибки обрабатываются с помощью блока try...catch. В блоке try размещается код, который может вызвать ошибку, а в блоке catch — инструкции для обработки этой ошибки. Также можно использовать finally, чтобы выполнить код независимо от того, возникла ошибка или нет. Обработку ошибок можно расширить с помощью кастомных ошибок.
Рейтинг:
2
Сложность:
7
Inline-кеширование — это техника, используемая JavaScript-движками для ускорения доступа к свойствам объектов. При первом обращении к свойству объектного типа кешируется информация о его местоположении, что позволяет при последующих обращениях избежать повторного поиска. Это значительно ускоряет доступ к свойствам объектов, особенно в циклах или часто вызываемых функциях.
Рейтинг:
5
Сложность:
7
useMemo и useCallback оба предназначены для оптимизации производительности в React, но служат разным целям. useMemo запоминает вычисленные значения, а useCallback запоминает функции. Это позволяет избежать лишних вычислений и создания функций при каждом рендере компонента.
Рейтинг:
1
Сложность:
3
Рейтинг:
2
Сложность:
5
Рейтинг:
1
Сложность:
5
Рейтинг:
3
Сложность:
6
Рейтинг:
3
Сложность:
5