Interceptarea excepțiilor în codul imbricat în JavaScript

Particularitatea și comoditatea excepțiilor constă în faptul că acestea pot fi prinse la orice nivel de imbricare a codului. Să privim un exemplu. Să presupunem că avem o funcție care salvează date în stocarea locală:

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

După cum știți deja, la depășirea stocării, metoda setItem va arunca o excepție. Nu este obligatoriu, totuși, să prindem această excepție în interiorul funcției save. Putem înfășura fiecare apel al funcției în try:

javascripttry {
  save('un șir oarecare');
} catch (error) {
  alert('s-a epuizat spațiul în stocarea locală!');
}
Задание 1

Este dată o funcție care transformă JSON într-un array:

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

În următorul cod din JSON se obține un array:

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

Înfășurați apelul funcției în construcția try-catch.