Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnologia Web para desenvolvedores
  2. JavaScript
  3. Referência JavaScript
  4. Objetos Globais
  5. Error

Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.

View in EnglishAlways switch to English

Error

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨julho de 2015⁩.

* Some parts of this feature may have varying levels of support.

O construtor deError cria um objeto de erro. Instâncias de objetosError são lançadas quando erros de tempo de execução ocorrem. O objetoError também pode ser usado como objeto base para exceções definidas pelo usuário. Veja abaixo tipos de erro padrões embutidos.

Sintaxe

new Error([message[, fileName[, lineNumber]]])

Parâmetros

message

Opcional. Descrição do erro legível para humanos.

fileNameNão padrão

Opcional. O valor da propriedadefileName no objeto de erro criado. O padrão é o nome do arquivo contendo o código que chamou o construtor deError().

lineNumberNão padrão

Opcional. O valor da propriedadelineNumber no objeto deError criado. O padrão é o número da linha contendo a invocação do construtorError().

Descrição

Erros em tempo de execução resultam em novos objetosError sendo criados e lançados.

Esta página documenta o uso do objetoError em si e seu uso como uma função construtora. Para uma lista de propriedades e métodos herdados por instâncias deError, vejaError.prototype.

Tipos de erro

Além do construtor genérico deError, existem outros seis construtores principais de erro no JavaScript. Para exceções emclient-side, vejaExceções na captura de Instruções.

EvalError

Cria uma instância representando um erro que ocorre na função global.eval().

InternalErrorNão padrão

Cria uma instância representando um erro que ocorre quando um erro interno naengine do JavaScript é lançado. Ex: "too much recursion".

RangeError

Cria uma instância representando um erro que ocorre quando um valor ou parâmetro numérico está fora de seus limites válidos.

ReferenceError

Cria uma instância representando um erro que ocorre ao de-referenciar uma referência inválida.

SyntaxError

Cria uma instância representando um erro que ocorre ao fazer oparse do código emeval().

TypeError

Cria uma instância representando um erro que ocorre quando uma variável ou parâmetro não é de um tipo válido.

URIError

Cria uma instância representando um erro que ocorre quando são passados parâmetros inválidos paraencodeURI() oudecodeURI().

Propriedades

Error.prototype

Permite a criação de propriedades para instâncias deError.

Métodos

O objetoError global não contém métodos próprios, entretanto, ele herda alguns métodos através da cadeia deprototypes.

Instâncias de Error

Propriedades

Métodos

Exemplos

Lançando um erro genérico

Geralmente você cria um objetoError com a intenção de lançá-lo usando a palavra-chavethrow. Você pode capturar o erro usando uma construção detry...catch:

js
try {  throw new Error("Oooops!");} catch (e) {  alert(e.name + ": " + e.message);}

Capturando um erro específico

Você pode escolher por capturar apenas tipos de erro específicos testando o tipo do erro com a propriedadeconstructor de erro ou, se você está escrevendo paraengines de JavaScript modernas, a palavra-chaveinstanceof:

js
try {  Objeto.Metodo();} catch (e) {  if (e instanceof EvalError) {    alert(e.name + ": " + e.message);  } else if (e instanceof RangeError) {    alert(e.name + ": " + e.message);  }  // ... etc}

Tipos de erro customizados

Você pode escolher definir seus próprios tipos de erro derivando deError para conseguir usarthrow new MeuErro() e usarinstanceof MeuErro para checar o tipo de erro na captura da exceção. A forma comum para isso está demonstrada abaixo

Aviso:Note que as instânciasMeuErro lançadas vão reportar valores delineNumber efileName incorretos, ao menos no Firefox.

Veja também"esta discussão no Stackoverflow (em inglês): What's a good way to extend Error in JavaScript?".

js
// Cria um novo objeto que herda o construtor de Error através do prototype.function MeuErro(message) {  this.name = "MeuErro";  this.message = message || "Mensagem de erro padrão";  this.stack = new Error().stack;}MeuErro.prototype = Object.create(MeuErro.prototype);MeuErro.prototype.constructor = MeuErro;try {  throw new MeuErro();} catch (e) {  console.log(e.name); // 'MeuErro'  console.log(e.message); // 'Mensagem de erro padrão'}try {  throw new MeuErro("Mensagem customizada");} catch (e) {  console.log(e.name); // 'MeuErro'  console.log(e.message); // 'Mensagem customizada'}

Especificações

Specification
ECMAScript® 2026 Language Specification
# sec-error-objects

Compatibilidade com navegadores

Veja também

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp