Подготовка к интервью

Банк вопросов с собеседований

Разбирайте реальные вопросы, сверяйтесь с подробными ответами и готовьтесь по технологиям и компаниям.

1886 вопросов 1634 компании 353 технологии

Усильте резюме перед собеседованием

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

Анализ резюме
Сбросить

Каталог

Результаты поиска

Найдено: 1886
Теория

Что произойдёт с Virtual DOM, если использовать createPortal для монтирования элемента в соседний div-контейнер?

При использовании createPortal React монтирует дочерний элемент в указанный DOM-узел вне иерархии текущего компонента, но с точки зрения Virtual DOM этот элемент остаётся частью того же React-дерева.

Читать ответ
Теория

При оптимизации загрузки тяжёлого фронтенд-приложения со 150 небольшими иконками стоит ли при HTTP/2 или HTTP/3 склеивать иконки в один спрайт либо использовать CSS-inlining?

CSS-спрайты — это методика объединения нескольких изображений в одно большое.

Читать ответ
Теория

Какой метод массива ломает типизацию в TypeScript?

Метод массива, который ломает типизацию в TypeScript — это Array.prototype.push. Он возвращает новую длину массива, а не сам массив, что иногда приводит к ошибкам, если ожидать цепочку вызовов или другой тип результата.

Читать ответ
Теория

Что происходит при открытии бесконечного цикла (while true) в одной вкладке браузера — почему иногда зависает только одна вкладка, а иногда несколько?

Когда в одной вкладке браузера запускается бесконечный цикл while(true), эта вкладка начинает потреблять все доступные ресурсы процессора, так как цикл не завершается и блокирует основной поток JavaScript.

Читать ответ
Теория

Какой тип следует указать для ошибки в catch в TypeScript и почему?

В Promise ошибку можно отловить с помощью метода .catch(). Этот метод принимает функцию, которая будет вызвана при отклонении промиса (rejected). Внутри этой функции можно обработать ошибку.

Читать ответ
Теория

Практическое задание: доработать компонент счётчика на React так, чтобы при нажатии на кнопку «Увеличить» значение счётчика увеличивалось на 1 и в историю добавлялась запись об увеличении с новым значением; при нажатии «Уменьшить» — аналогично; при нажатии «Сбросить» — история очищалась.

Вот пример компонента React, реализующего счётчик с историей изменений и кнопками «Увеличить», «Уменьшить» и «Сбросить»:

Читать ответ