⊗jsSpExcThrUT 147 of 294 menu

At kaste sine egne undtagelsestyper i JavaScript

Antallet af indbyggede undtagelser i JavaScript er ikke særlig stort, og de kan som regel ikke opfylde alle vores behov for forskellige undtagelsestyper. Derfor har JavaScript en indbygget mulighed for at oprette undtagelser med deres egen type.

Der er forskellige måder at gøre dette på. Den enkleste er at videregive et objekt med nøglerne name og message til throw:

try { throw {name: 'MyError', message: 'undtagelsestekst'}; } catch (error) { console.log(error.name); // 'MyError' console.log(error.message); // 'undtagelsestekst' }

Tidligere lavede vi en funktion, der kaster en undtagelse ved division med nul:

function div(a, b) { if (b !== 0) { return a / b; } else { throw new Error('fejl ved division med nul'); } }

Omstrukturer denne funktion, så den kaster en undtagelse med en eller anden selvopfundet type, for eksempel DivisionByZeroError.

Tidligere lavede du en funktion, der kaster en undtagelse ved forsøg på at udtrække kvadratroden af et negativt tal. Omstrukturer din funktion, så den kaster en undtagelse med en type, du selv har opfundet. Tænk godt over navnet på undtagelsen, så dette navn er velvalgt.

deuzlesrums