Erindite püüdmine pesastatud koodis JavaScriptis
Erindite eripära ja mugavus seisneb selles, et neid saab püüda mis tahes pesastustasemel. Vaatame näidet. Olgu meil funktsioon, mis salvestab andmed kohtsalvestusse:
function save(str) {
localStorage.setItem('key', str);
}
Nagu te juba teate, kui salvestusruum täitub,
viskab meetod setItem erindi.
Kuid ei ole kohustuslik seda erindit püüda
funktsiooni save sees. Võib mähkida
iga funktsiooni väljakutse try-plokki:
try {
save('mingi sõne');
} catch (error) {
alert('kohtsalvestusruum on täis!');
}
Antud on funktsioon, mis teisendab JSONi massiiviks:
function getArr(json) {
return JSON.parse(json);
}
Järgmises koodis saadakse JSONist massiiv:
let arr = getArr('[1,2,3,4,5]');
console.log(arr);
Mähige funktsiooni väljakutse try-catch konstruktsiooni.