Lançando seus próprios tipos de exceção em JavaScript
A quantidade de exceções integradas no JavaScript não é muito grande e, na maioria das vezes, elas não conseguem atender a todas as nossas necessidades em diferentes tipos de exceções. Portanto, o JavaScript possui uma funcionalidade integrada para criar exceções com seu próprio tipo.
Existem diferentes maneiras de fazer isso. A mais
simples - é passar um objeto
com as chaves name e message para o throw:
try {
throw {name: 'MyError', message: 'texto da exceção'};
} catch (error) {
console.log(error.name); // 'MyError'
console.log(error.message); // 'texto da exceção'
}
Anteriormente, criamos uma função que lança uma exceção ao dividir por zero:
function div(a, b) {
if (b !== 0) {
return a / b;
} else {
throw new Error('erro de divisão por zero');
}
}
Modifique esta função para que ela lance
uma exceção com um tipo inventado por nós,
por exemplo, DivisionByZeroError.
Anteriormente, você criou uma função que lança uma exceção ao tentar extrair a raiz quadrada de um número negativo. Modifique sua função para que ela lance uma exceção com um tipo inventado por você. Pense bem no nome da exceção, para que seja um nome adequado.