⊗jsSpExcCt 139 of 294 menu

Interceptovanje izuzetaka u JavaScript-u

Za hvatanje izuzetaka koristi se konstrukcija try-catch. Ona ima sledeću sintaksu:

try { // kod } catch (error) { // obrada greške }

U bloku try treba smestiti kod koji može da sadrži izuzetak. Ako prilikom izvršavanja ovog koda nastane izuzetna situacija, onda naš skript neće pasti sa greškom u konzoli, već će se početi izvršavati kod bloka catch.

U ovom bloku treba da adekvatno reagujemo na grešku. Na primer, ako smo hteli da pošaljemo neke podatke preko interneta a internet ne radi, u bloku catch možemo da se izborimo sa situacijom: možemo, na primer, da prikažemo poruku korisniku, a možemo i da pokušamo posle nekog vremena ponovo da pošaljemo podatke - možda je internet već počeo da radi.

Ako prilikom izvršavanja bloka try nije došlo do izuzetnih situacija, onda će se koristan kod jednostavno izvršiti, a kod iz bloka catch - neće.

Za primer, hajde da pokušamo da parsirajmo JSON i u slučaju da je nekorektan, prikažimo na ekranu poruku o tome:

try { let data = JSON.parse('{1,2,3,4,5}'); } catch (error) { alert('nije moguće izvršiti operaciju parsiranja JSON-a'); }

Dat je kod koji upisuje određeni string u lokalno skladište:

let str = 'neki string'; localStorage.setItem('key', str);

Omotajte ovaj kod u konstrukciju try-catch. U bloku catch prikažite poruku o prekoračenju skladišta. Proverite rad vašeg koda za string veličine manje od 5 MB i za string veće veličine.

Dat je JSON, unutar koga je sačuvan niz. Ako je ovaj JSON korektan, onda prikažite elemente niza u vidu liste ul. Ako JSON nije korektan, prikažite na ekranu poruku da se na stranici dogodila greška.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij