JavaScript · Essencial · Português · Técnico
objeto Error
Objeto padrão para representar falhas, com message, name e stack. Ao usar throw, o certo é lançar new Error, que traz o rastro de chamadas, e não uma string solta.
Onde usar
Aparece em throw, em catch e em logs de produção. Em code review, lançar strings é apontado, pois não há stack trace; subclasses de Error permitem distinguir os tipos de falha.
Em código
try {
throw new Error('saldo insuficiente');
} catch (e) {
console.log(e.name, e.message);
console.log(e instanceof Error);
}
// Error saldo insuficiente, depois trueExemplos
Lance new Error em vez de uma string para ter o stack trace.
Criei uma subclasse de Error para os erros de validação.
Cuidado
Lançar strings ou objetos comuns com throw, perdendo o stack trace.
Sinônimos
Error