Оптимизация и реорганизация React‑компонентов
Вынесите ClientType в независимый модуль, сервис пусть принимает clientId и возвращает уже разобранные данные. Компонент должен управлять загрузкой, ошибкой и отменой устаревшего запроса.
Читать ответПодготовка к интервью
881 вопрос с собеседований в Ozon
Что проверяют на интервью
Подборка объединяет вопросы, отмеченные на этапах интервью в Ozon. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: database, backend, sql.
Каталог
Вынесите ClientType в независимый модуль, сервис пусть принимает clientId и возвращает уже разобранные данные. Компонент должен управлять загрузкой, ошибкой и отменой устаревшего запроса.
Читать ответЕсли повторения должны учитываться, сравните частоты элементов через Map. Одинаковый набор уникальных значений ещё не означает равенства массивов как мультимножеств.
Читать ответЖадный выбор крупных купюр может не найти существующее решение при ограниченных остатках. Выполните поиск комбинации и изменяйте denominations только после успешного завершения поиска.
Читать ответСравните длины, затем частоты каждого числа. Это учитывает дубликаты: массивы с одинаковым набором значений, но разным количеством повторов не равны.
Читать ответCall и apply сразу вызывают функцию с указанным this; bind создаёт новую функцию с закреплённым this и, при необходимости, начальными аргументами.
Читать ответСвяжите интерес к новой компании с желаемыми задачами и условиями развития, а не только с недовольством текущим местом.
Читать ответDOMContentLoaded означает завершение разбора DOM и выполнения соответствующих отложенных скриптов. Load ждёт также зависимые ресурсы страницы, например обычные изображения.
Читать ответНазовите реальные средства создания форм: нативные элементы, библиотеку компонентов и механизм управления состоянием/валидации. Это разные уровни решения.
Читать ответinterface описывает объектный контракт и поддерживает объединение деклараций. type задаёт псевдоним для любого типа, включая union, tuple и условные типы.
Читать ответПрочитайте сохранённую строку после появления input и обновляйте localStorage на событии input, обрабатывая возможный отказ хранилища.
Читать ответИспользуйте два параметра типа, T для элемента и U для накопителя. Any выключает проверку операций, тогда как unknown требует сначала сузить неизвестный тип.
Читать ответВывод: Анна, Ольга, undefined. До извлечения метода выполните user.getName = user.getName.bind(user), чтобы read сохранил получателя.
Читать ответ