Tipi di situazioni che si verificano in JavaScript

In JavaScript ci sono pochissime situazioni in cui si verificano eccezioni. Innanzitutto, semplicemente perché ci sono pochissimi posti dove possono verificarsi.

In secondo luogo, perché il linguaggio stesso è "indulgente": chiude un occhio su molte cose, ad esempio, sulla divisione per zero o sul codice HTML non corretto. Anche se specifichi un percorso errato per un'immagine che intendi caricare, JavaScript ti perdonerà anche questo e non lo considererà un'eccezione.

Tuttavia, esistono situazioni eccezionali. Analizzeremo due delle più semplici e sul loro esempio studieremo come lavorare con le eccezioni in JavaScript.

La prima eccezione si verifica quando vogliamo analizzare un JSON non corretto:

javascriptlet data = JSON.parse('{1,2,3,4,5}'); // questo json non è corretto

E la seconda eccezione si verifica quando l'archivio locale, allocato per il nostro sito, si riempie (più di 5 megabyte). Provochiamo artificialmente una tale eccezione:

javascriptlet str = '';
for (let i = 1; i <= 6 * 10 ** 6; i++) { // formiamo una stringa di oltre 5 mb
  str += '+';
}

localStorage.setItem('key', str); // tentiamo di scrivere nell'archivio

Come reagisce JavaScript a tali situazioni eccezionali? Semplicemente visualizza un errore nella console e interrompe l'ulteriore esecuzione dello script.

Il nostro compito, come programmatori, consiste nell'intercettare una tale situazione e gestirla in qualche modo, senza permettere al programma di interrompere completamente la sua esecuzione. Per questo esiste una speciale costruzione try-catch, che analizzeremo nelle prossime lezioni.

Задание 1

Crea una stringa di dimensioni sufficientemente grandi e tenta di salvarla nell'archivio locale. Assicurati che nella console venga visualizzato un errore.

Задание 2

Tenta di analizzare un JSON non corretto. Assicurati che nella console venga visualizzato un errore.