⊗jsSpExcCt 139 of 294 menu

Hantering av undantag i JavaScript

För att fånga undantag används konstruktionen try-catch. Den har följande syntax:

try { // kod } catch (error) { // felhantering }

I try-blocket ska du placera kod som kan innehålla ett undantag. Om ett undantag uppstår när denna kod körs, kommer vårt skript inte att krascha med ett fel i konsolen, utan koden i catch-blocket kommer att börja köras.

I detta block måste vi på något adekvat sätt svara på felet. Till exempel, om vi försökte skicka data över internet och internet inte fungerar, kan vi i catch-blocket hantera situationen: vi kan till exempel visa ett meddelande för användaren, eller försöka skicka datan igen efter en stund – ifall internet har börjat fungera.

Om inga exceptionella situationer uppstod när try-blocket kördes, kommer den användbara koden bara att köras, medan koden från catch-blocket inte kommer att köras.

Låt oss som ett exempel försöka tolka JSON och om den är ogiltig, visa ett meddelande om detta:

try { let data = JSON.parse('{1,2,3,4,5}'); } catch (error) { alert('kan inte utföra JSON-tolkning'); }

Följande kod skriver en sträng till lokal lagring:

let str = 'någon sträng'; localStorage.setItem('key', str);

Sätt in denna kod i en try-catch- konstruktion. I catch-blocket ska du visa ett meddelande om att lagringen är full. Testa hur din kod fungerar för en sträng med en storlek mindre än 5 MB och för en sträng med en större storlek.

Du har en JSON, inuti vilken en array lagras. Om denna JSON är korrekt, ska du visa elementen i arrayen som en ul-lista. Om JSON är ogiltig, ska du visa ett meddelande om att ett fel uppstod på sidan.

Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa