ExpertiDict

JavaScript · Essencial · Português · Técnico

objeto Error

/obˈʒɛtu ˈɛɹɚ/substantivo

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 true

Exemplos

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

Veja também

Todos os termos de JavaScript