Обнаружение багов в React‑компоненте
В коде есть незакрытые return, присваивание вместо сравнения, null вместо массива, неубранный обработчик и вероятное сохранение Promise в state. Исправления нужны и в JSX, и в эффекте загрузки.
Читать ответПодготовка к интервью
3221 вопрос в категории «Лайвкодинг»
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: frontend, browser, database.
Каталог
В коде есть незакрытые return, присваивание вместо сравнения, null вместо массива, неубранный обработчик и вероятное сохранение Promise в state. Исправления нужны и в JSX, и в эффекте загрузки.
Читать ответСливайте массивы двумя указателями: сравнивайте текущие элементы и переносите меньший в новый массив. Так сохраняются исходные данные и все дубликаты.
Читать ответСначала исправьте сами функции: их Promise должны завершаться через resolve, а third должен возвращать Promise. Затем последовательные await обеспечат порядок 1, 2, 3.
Читать ответБесконечный синхронный while блокирует основной поток: callbacks таймеров не выполняются, счётчик не увеличивается. Страница зависнет и может исчерпать память из-за накопления таймеров.
Читать ответКаждый вызов debounce отменяет прежний таймер и планирует новый. Функция выполнится один раз после трёх секунд тишины, с аргументами и this последнего вызова.
Читать ответПодходит .menu a:last-child:not([target="_blank"]). В приведённой разметке совпадений нет: единственная последняя ссылка имеет запрещённый target.
Читать ответИспользуйте границы диапазона и сравнение с его серединой. На каждом шаге отбрасывается половина элементов; для 9 в данном массиве результат равен 4.
Читать ответГарантированное начало: Start, async request, End, Promise 1, Promise 2. Относительный порядок Timeout 1 и callbacks requestAnimationFrame зависит от момента обновления рендеринга браузера.
Читать ответСумма элементов равна 171. Передайте reduce начальный аккумулятор 0, чтобы тот же код корректно работал и с пустым массивом.
Читать ответПреобразуйте dd.mm.yyyy в числовой ключ yyyymmdd и сравнивайте ключи. sort выполняйте на копии массива, если исходный порядок нужно сохранить.
Читать ответcompose выполняет функции справа налево. Самая правая получает все аргументы вызова, остальные — по одному результату предыдущего шага.
Читать ответCSV нельзя в общем случае разобрать split по запятым: поля могут содержать кавычки, запятые и переводы строк. Для данного простого примера достаточно разделения строк и полей с явным ограничением формата.
Читать ответ