Håndtering av unntak i nestet kode i JavaScript
Egenskapen og bekvemmeligheten med unntak ligger i at de kan fanges på ethvert nivå av kodenesting. La oss se på et eksempel. Anta at vi har en funksjon som lagrer data i lokal lagring:
function save(str) {
localStorage.setItem('key', str);
}
Som du allerede vet, når lagringen er full,
vil metoden setItem kaste et unntak.
Det er imidlertid ikke nødvendig å fange
dette unntaket inne i funksjonen save.
Man kan pakke inn hvert kall til funksjonen selv
i try:
try {
save('en eller annen streng');
} catch (error) {
alert('det ble ikke mer plass i lokal lagring!');
}
Gitt en funksjon som konverterer JSON til en array:
function getArr(json) {
return JSON.parse(json);
}
I følgende kode hentes en array fra JSON:
let arr = getArr('[1,2,3,4,5]');
console.log(arr);
Pakke inn funksjonskallet i try-catch-konstruksjonen.