JavaScript · Junior · Pytanie 35 z 75

Dlaczego catch nie złapie błędu?

try {
  fetch("/api").then(r => { throw new Error("fail"); });
} catch (e) {
  console.log("caught");
}

Wyjaśnienie

Blok try wykonał się synchronicznie i zakończył, zanim serwer odpowiedział. Błędy w łańcuchu łapie się przez .catch() albo pisząc await fetch(...) wewnątrz try w funkcji async - wtedy catch działa.

Do poczytania

Błąd w pytaniu

JavaScript · Junior · pytanie 35

Sprawdź się

Rozwiąż test JavaScript · Junior: pytania i odpowiedzi są tasowane, a na końcu czeka przegląd błędów.

Rozwiąż ten test