Gooi jou eie tipes uitsonderings in JavaScript
Die aantal ingeboude uitsonderings in JavaScript is nie so groot nie en dit kan gewoonlik nie al ons behoeftes in verskillende tipes uitsonderings bevredig nie. Daarom is die vermoë om uitsonderings met 'n eie tipe te skep in JavaScript ingebou.
Daar is verskillende maniere om dit te doen. Die
maklikste is om 'n voorwerp met sleutels
name en message aan throw oor te dra:
try {
throw {name: 'MyError', message: 'uitsonderingsteks'};
} catch (error) {
console.log(error.name); // 'MyError'
console.log(error.message); // 'uitsonderingsteks'
}
Voorheen het ons 'n funksie gemaak wat 'n uitsondering gooi wanneer daar deur nul gedeel word:
function div(a, b) {
if (b !== 0) {
return a / b;
} else {
throw new Error('deling deur nul fout');
}
}
Herskep hierdie funksie sodat dit 'n uitsondering
gooi met 'n selfverdigde tipe, byvoorbeeld,
DivisionByZeroError.
Voorheen het jy 'n funksie gemaak wat 'n uitsondering gooi wanneer daar gepoog word om die wortel van 'n negatiewe nommer te trek. Herskep jou funksie sodat dit 'n uitsondering gooi met 'n deur jou selfverdigde tip. Dink goed na oor die naam van die uitsondering, sodat die naam geslaagd is.