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:
let 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:
let 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.
Crea una stringa di dimensioni sufficientemente grandi e tenta di salvarla nell'archivio locale. Assicurati che nella console venga visualizzato un errore.
Tenta di analizzare un JSON non corretto. Assicurati che nella console venga visualizzato un errore.