Opvangen van uitzonderingen in geneste code in JavaScript
Het kenmerk en het gemak van uitzonderingen is dat ze op elk niveau van geneste code kunnen worden opgevangen. Laten we een voorbeeld bekijken. Stel we hebben een functie die gegevens opslaat in de lokale opslag:
function save(str) {
localStorage.setItem('key', str);
}
Zoals je al weet, wanneer de opslag vol is,
zal de methode setItem een uitzondering werpen.
Het is echter niet verplicht om deze uitzondering
in de functie save op te vangen.
Je kunt elke aanroep van de functie zelf
in try verpakken:
try {
save('een bepaalde string');
} catch (error) {
alert('er is geen ruimte meer in de lokale opslag!');
}
Gegeven is een functie die JSON omzet in een array:
function getArr(json) {
return JSON.parse(json);
}
In de volgende code wordt een array uit JSON verkregen:
let arr = getArr('[1,2,3,4,5]');
console.log(arr);
Verpak de functieaanroep in de constructie try-catch.