⊗jsSpExcCt 139 of 294 menu

Undtagelseshåndtering i JavaScript

Til at håndtere undtagelser bruges konstruktionen try-catch. Den har følgende syntaks:

try { // kode } catch (error) { // fejlhåndtering }

I try-blokken skal man placere koden, som kan indeholde en undtagelse. Hvis der opstår en undtagelsessituation under udførelsen af denne kode, vil vores script ikke gå ned med en fejl i konsollen, men i stedet vil koden i catch-blokken blive udført.

I denne blok skal vi reagere på fejlen på en passende måde. For eksempel, hvis vi prøvede at sende data over internettet og internettet ikke virker, kan vi i catch- blokken håndtere situationen: man kan for eksempel vise en besked til brugeren, eller man kan prøve at sende dataene igen efter et stykke tid - måske virker internettet så.

Hvis der ikke opstod nogen undtagelsessituationer during udførelsen af try- blokken, vil den nyttige kode bare blive udført, mens koden fra catch- blokken ikke vil.

Lad os som eksempel prøve at parse JSON og i tilfælde af at den er ugyldig, vise en besked om dette:

try { let data = JSON.parse('{1,2,3,4,5}'); } catch (error) { alert('Kan ikke udføre JSON-parsning'); }

Der gives kode, som gemmer en bestemt streng i lokal lagring:

let str = 'en eller anden streng'; localStorage.setItem('key', str);

Indpak denne kode i en try-catch- konstruktion. I catch- blokken skal du vise en besked om at lagringen er fuld. Test din kode med en streng på mindre end 5 MB og med en streng på en størrelse derover.

Der gives JSON, inde i hvilken der gemmes et array. Hvis denne JSON er korrekt, så udskriv elementerne i arrayet som en ul-liste. Hvis JSON ikke er korrekt, vis en besked om at der er opstået en fejl på siden.

aztrrudaby