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ē:
function 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:
try {
save('kāda virkne');
} catch (error) {
alert('Lokālajā glabātuvē beigusies vieta!');
}
Dota funkcija, kas pārveido JSON masīvā:
function getArr(json) {
return JSON.parse(json);
}
Nākošajā kodā no JSON iegūst masīvu:
let arr = getArr('[1,2,3,4,5]');
console.log(arr);
Ietījiet funkcijas izsaukumu try-catch konstrukcijā.