Функция, реализующая паузу перед возвратом результата
Верните Promise, который разрешится переданным значением после таймера. Это неблокирующая задержка: вызывающий код должен использовать await или then.
Читать ответПодготовка к интервью
3221 вопрос в категории «Лайвкодинг»
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: frontend, browser, database.
Каталог
Верните Promise, который разрешится переданным значением после таймера. Это неблокирующая задержка: вызывающий код должен использовать await или then.
Читать ответПорядок вывода: 1, 3, 2, 4. Конструктор Promise выполняет executor синхронно, а сам Promise остаётся pending до callback таймера.
Читать ответБесконечный синхронный цикл не даёт браузеру нормально обновлять экран. Наблюдаемого конечного значения нет: страница зависнет, даже если DOM-свойство непрерывно меняется.
Читать ответДля корректных дат YYYY-MM-DD строковая сортировка совпадает с календарной. Отсортируйте копию массива и сгруппируйте MM-DD по первым четырём символам даты.
Читать ответПри обычном первом клиентском монтировании без Strict Mode ожидается 1, 3, 4, 2: сначала render родителя и ребёнка, затем пассивные эффекты ребёнка и родителя.
Читать ответСоздайте объект через Object.create(Constructor.prototype), вызовите обычную функцию-конструктор с этим this и учтите явно возвращённый объект. Для class и встроенных конструкторов нужен Reflect.construct.
Читать ответИспользуйте DFS с двумя множествами: активный стек пути и уже завершённые вершины. Ребро в активную вершину означает цикл, а повторный заход в завершённую — нет.
Читать ответfn1 печатает container дважды, fn2 — container. Стрелка fn3 печатает внешний this, который не меняется через apply. Сам вызов boundFn.bind(this) ничего не выводит: он лишь создаёт ещё одну функцию.
Читать ответВывод: 7, 2, 5, 1, 4, 6, 3. Promise с выводом 4 сначала ждёт своего таймера, а таймер с 3 регистрируется только из микрозадачи.
Читать ответСохраняйте последний committed count в ref, а cleanup эффекта с [] пусть читает этот ref. Зависимость [count] у cleanup вызвала бы отправку при каждом изменении счётчика.
Читать ответКаждая попытка получает собственный AbortController и таймер. После ошибки запрос повторяется; maxRetries означает дополнительные повторы, то есть всего максимум maxRetries + 1 попыток.
Читать ответcatObj.say() и catObj.say2() выводят meow. Стрелка в поле экземпляра захватывает this экземпляра, а стрелка в литерале objCat — внешний this, не сам objCat.
Читать ответ