Создание собственного метода фильтрации для массивов
Нужно сохранить длину на начало обхода, пропускать отсутствующие индексы, передавать callback значение/индекс/массив и складывать прошедшие значения в новый плотный массив.
Читать ответПодготовка к интервью
3221 вопрос в категории «Лайвкодинг»
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: frontend, browser, database.
Каталог
Нужно сохранить длину на начало обхода, пропускать отсутствующие индексы, передавать callback значение/индекс/массив и складывать прошедшие значения в новый плотный массив.
Читать ответРазберите URLSearchParams, разделите ключи по точкам и создайте промежуточные объекты. Запретите опасные ключи и конфликт скалярного значения с вложенным объектом.
Читать ответВызывайте функции по одной в цикле с await и ловите ошибку каждой отдельно, чтобы продолжить после отклонения. Передавать нужно функции, а не уже запущенные промисы.
Читать ответЕсли «первая» означает первую по позиции букву, встречающуюся более одного раза, сначала посчитайте частоты, затем найдите первый символ с частотой больше единицы.
Читать ответПриведённая рекурсивная функция уже корректна: сумма узлов равна 328, поэтому второй console.log выведет true. Каждый узел добавляется ровно один раз.
Читать ответСвяжите шаги DFS через then, запрашивая соседей одного аэропорта за раз. В показанном графе маршрута A → N нет: пример ['A','D','N'] противоречит списку рейсов.
Читать ответБудут два вывода: сначала 1 2, затем undefined 3. Без начального значения reduce берёт первый элемент как аккумулятор, а callback ничего не возвращает.
Читать ответНормализуйте регистр, оставьте только Unicode-буквы и цифры, затем сравните частоты символов. Порядок не важен, но число повторений каждой буквы должно совпадать.
Читать ответЗапустите запросы через links.map и дождитесь Promise.all. Он сохраняет порядок входа независимо от скорости ответов; отдельно проверяйте response.ok.
Читать ответПорядок вывода: 1, 7, 3, 5, 2, 6, 4. Таймер с числом 4 регистрируется из микрозадачи, поэтому попадает после ранее созданных таймеров 2 и 6.
Читать ответСохраняйте каждое значение на его исходном индексе и уменьшайте счётчик ожидаемых результатов. При первой ошибке отклоняйте общий Promise с полученной причиной.
Читать ответДля показанного компонента нужен флаг готовности после первого commit: сначала false, затем true из useEffect. По нему можно отложить отображение children до следующего рендера.
Читать ответ