Afvikling af undtagelser i indlejret kode i JavaScript

Egenskaben og bekvemmeligheden ved undtagelser består i, at de kan fanges på ethvert indlejringsniveau i koden. Lad os se på et eksempel. Antag, at vi har en funktion, der gemmer data i local storage:

javascriptfunction save(str) {
  localStorage.setItem('key', str);
}

Som du allerede ved, vil metoden setItem kaste en undtagelse, hvis opbevaringen er fuld. Det er dog ikke nødvendigt at fange denne undtagelse inde i funktionen save. Man kan indpakke hvert kald af selve funktionen i try:

javascripttry {
  save('en eller anden streng');
} catch (error) {
  alert('Der er ikke mere plads i local storage!');
}
Задание 1

Givet en funktion, der konverterer JSON til et array:

javascriptfunction getArr(json) {
  return JSON.parse(json);
}

I følgende kode hentes et array fra JSON:

javascriptlet arr = getArr('[1,2,3,4,5]');
console.log(arr);

Indpak kaldet til funktionen i en try-catch konstruktion.