Код Senior Разминка: короткие функции обновлено
sleepAbortable
Условие
Пауза, которую можно прервать сигналом AbortSignal - тогда промис отклоняется ошибкой с name 'AbortError'.
Что проверяют тесты
обычная пауза
прерывается
уже прерванный сигнал
Как подойти
Три обязательные детали: проверка signal.aborted до старта (сигнал может быть уже прерван), снятие таймера при прерывании, once: true чтобы не копить слушатели. Любая ожидающая операция в проекте должна поддерживать отмену этим же способом.
Подсказки: 1
- Проверь, не прерван ли сигнал ещё до установки таймера.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.