Promise может оставаться pending неограниченно долго, если ни resolve, ни reject не приводят его к завершённому состоянию.
Может ли Promise быть бесконечным? Как это сделать?
Promise может оставаться pending неограниченно долго, если ни resolve, ни reject не приводят его к завершённому состоянию.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Promise может оставаться pending неограниченно долго, если ни resolve, ни reject не приводят его к завершённому состоянию.
Простейший пример: const pending = new Promise(() => {});. Await такого Promise не продолжит выполнение без другого механизма. Сам Promise не является таймером и не обязательно удерживает процесс Node.js запущенным. Timeout обычно реализуют отдельно; он не отменяет исходную операцию автоматически.