Å kaste ulike typer unntak i JavaScript
La oss kaste vårt eget unntak og se hvordan objektet med feil vil oppføre seg i dette tilfellet:
try {
throw new Error('unntakstekst');
} catch (error) {
console.log(error.name); // 'Error'
console.log(error.message); // 'unntakstekst'
}
Som du ser, er typen av vårt unntak - 'Error'.
Samme type vil være for alle unntak kastet
på lignende måte. Dette vil imidlertid ikke alltid
være praktisk, fordi hvis vi kan ha
flere unntak, vil vi ikke kunne skille dem
fra hverandre.
JavaScript har en løsning på dette problemet:
man kan kaste unntak ikke bare av typen
Error, men også av alle innebygde JavaScript
feiltyper, for eksempel TypeError,
SyntaxError, RangeError.
La oss for eksempel kaste et unntak av typen
SyntaxError:
try {
throw new SyntaxError('unntakstekst');
} catch (error) {
console.log(error.name); // 'SyntaxError'
console.log(error.message); // 'unntakstekst'
}
Kast et unntak med typen TypeError.
Kast et unntak med typen SyntaxError
og RangeError. Fång disse unntakene
med en enkelt try-blokk. I catch-blokken
skriv ut forskjellige feilmeldinger for unntak
av forskjellige typer.