JavaScript · Senior · Запитання 51 з 75
Як перервати fetch через 5 секунд або коли користувач іде зі сторінки - що настане раніше?
const signal = AbortSignal.any([AbortSignal.timeout(5000), controller.signal]);
await fetch(url, { signal });- ✓Правильна відповідь: Об'єднати
AbortSignal.timeout()і сигнал контролера черезAbortSignal.any() - 2Обгорнути
fetchуsetTimeout - 3Передати
{ timeout: 5000 }уfetch
Пояснення
У fetch немає опції таймауту. AbortSignal.timeout відхиляє з TimeoutError, а ручне скасування дає AbortError, тож їх можна розрізнити.