⊗jsSpExcCt 139 of 294 menu

Przechwytywanie wyjątków w JavaScript

Do przechwytywania wyjątków używa się konstrukcji try-catch. Ma ona następującą składnię:

try { // kod } catch (error) { // obsługa błędu }

W bloku try należy umieszczać kod, który może zawierać wyjątek. Jeśli nagle podczas wykonywania tego kodu wystąpi sytuacja wyjątkowa, nasz skrypt nie zawali się z błędem w konsoli, a zacznie wykonywać się kod bloku catch.

W tym bloku powinniśmy w jakiś adekwatny sposób zareagować na błąd. Na przykład, jeśli chcieliśmy wysłać jakieś dane przez internet i internet nie działa, w bloku catch możemy jakoś poradzić sobie z sytuacją: można, na przykład, wyświetlić komunikat użytkownikowi, a można po pewnym czasie spróbować wysłać dane ponownie - nagle internet już działa.

Jeśli podczas wykonywania bloku try żadnych sytuacji wyjątkowych nie wystąpiło, to pożyteczny kod po prostu się wykona, a kod z bloku catch - nie.

Dla przykładu spróbujmy przeanalizować JSON i w przypadku jego nieprawidłowości wyświetlimy na ekranie komunikat o tym:

try { let data = JSON.parse('{1,2,3,4,5}'); } catch (error) { alert('nie można wykonać operacji analizy JSON'); }

Dany jest kod, który zapisuje pewien ciąg znaków w lokalnej pamięci:

let str = 'jakiś ciąg znaków'; localStorage.setItem('key', str);

Zawiń ten kod w konstrukcję try-catch. W bloku catch wyświetl komunikat o przepełnieniu pamięci. Sprawdź działanie swojego kodu dla ciągu znaków o rozmiarze mniejszym niż 5 MB i dla ciągu znaków o większym rozmiarze.

Dany jest JSON, wewnątrz którego przechowywana jest tablica. Jeśli ten JSON jest poprawny, to wyświetl elementy tablicy w postaci listy ul. Jeśli jednak JSON jest niepoprawny, wyświetl na ekranie komunikat o tym, że na stronie wystąpił błąd.

Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć