Izņēmumu pārtveršie iegultajā kodā JavaScript

Izņēmumu īpatnība un ērtība slēpjas tajā, ka tos var ķert jebkurā koda iegulšanas līmenī. Apskatīsim piemērā. Pieņemsim, ka mums ir funkcija, kas saglabā datus lokālajā glabātuvē:

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

Kā jūs jau zināt, kad glabātuvē nav vairs vietas, metode setItem izmestīs izņēmumu. Tomēr, nav obligāti šo izņēmumu ķert funkcijas save iekšienē. Varat ietīt katru pašas funkcijas izsaukumu try:

javascripttry {
  save('kāda virkne');
} catch (error) {
  alert('Lokālajā glabātuvē beigusies vieta!');
}
Задание 1

Dota funkcija, kas pārveido JSON masīvā:

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

Nākošajā kodā no JSON iegūst masīvu:

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

Ietījiet funkcijas izsaukumu try-catch konstrukcijā.