Intercettazione delle eccezioni nel codice annidato in JavaScript

La caratteristica e la comodità delle eccezioni consistono nel fatto che possono essere catturate a qualsiasi livello di annidamento del codice. Osserviamo con un esempio. Supponiamo di avere una funzione che salva i dati nella memoria locale:

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

Come già sapete, in caso di overflow della memoria, il metodo setItem genererà un'eccezione. Non è obbligatorio, tuttavia, catturare questa eccezione all'interno della funzione save. È possibile avvolgere in try ogni chiamata della funzione stessa:

javascripttry {
  save('qualche stringa');
} catch (error) {
  alert('spazio esaurito nella memoria locale!');
}
Задание 1

Data una funzione che converte JSON in un array:

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

Nel codice seguente, da JSON si ottiene un array:

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

Avvolgi la chiamata della funzione nella costruzione try-catch.