Подборка объединяет вопросы, отмеченные на этапах интервью в Скиф трейд. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: frontend, browser, react.
Чтобы компонент с 5 пропсами перерендеривался только при изменении двух из них, можно использовать кастомное сравнение пропсов. Например, в React это делается с помощью React.memo и функции сравнения:
useReducer — это хук в React, который используется для управления состоянием компонента, особенно когда логика обновления сложная или зависит от предыдущего состояния.
XSS (Cross-Site Scripting) — это уязвимость, при которой злоумышленник внедряет вредоносный скрипт в веб-страницу, который затем выполняется в браузере других пользователей.
useEffect вызывается после того, как React отрисовал компонент и обновил DOM. Это значит, что эффект выполняется асинхронно после того, как браузер отобразил изменения, что позволяет не блокировать визуальное обновление.
Generic в TypeScript — это механизм, позволяющий создавать компоненты (функции, классы, интерфейсы), которые работают с разными типами данных, сохраняя при этом типовую безопасность.
useMemo — это хук React, который позволяет мемоизировать вычисленное значение, чтобы не пересчитывать его при каждом рендере, если зависимости не изменились.
box-sizing: content-box \- стандартное поведение, где width и height определяют размеры кон содержимого, а padding и border добавляются к общим размерам элемента.