We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

Esta tradução está incompleta. Por favor, ajude a traduzir este artigo.

O objeto ReferenceError representa um erro quando uma variável não existente é referenciada.

Sintaxe

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

Parâmetros

message
Opcional. Descrição legível do erro.
fileName
Opcional. O nome do arquivo contendo o código que causou a excessão.
lineNumber
Opcional. O número da linha do código que causou a excessão.

Descrição

ReferenceError acontece quando é feita uma tentativa de referenciar uma variável que não foi declarada.

Propriedades

ReferenceError.prototype
Permite a inclusão de propriedades em um objeto ReferenceError.

Métodos

O ReferenceError não contém métodos próprios, porém, ele herda alguns métodos através da cadeia de protótipos.

Instâncias do ReferenceError 

Propriedades

ReferenceError.prototype.constructor
Specifies the function that created an instance's prototype.
ReferenceError.prototype.message
Error message. Although ECMA-262 specifies that ReferenceError should provide its own message property, in SpiderMonkey, it inherits Error.prototype.message.
ReferenceError.prototype.name
Error name. Inherited from Error.
ReferenceError.prototype.fileName
Path to file that raised this error. Inherited from Error.
ReferenceError.prototype.lineNumber
Line number in file that raised this error. Inherited from Error.
ReferenceError.prototype.columnNumber
Column number in line that raised this error. Inherited from Error.
ReferenceError.prototype.stack
Stack trace. Inherited from Error.

Métodos

Although the ReferenceError prototype object does not contain any methods of its own, ReferenceError instances do inherit some methods through the prototype chain.

Exemplos

Capturando um ReferenceError

try {
  var a = variavelNaoDefinida;
} catch (e) {
  console.log(e instanceof ReferenceError); // true
  console.log(e.message);                   // "variavelNaoDefinida não está definida"
  console.log(e.name);                      // "ReferenceError"
  console.log(e.fileName);                  // "Scratchpad/1"
  console.log(e.lineNumber);                // 2
  console.log(e.columnNumber);              // 6
  console.log(e.stack);                     // "@Scratchpad/2:2:7\n"
}

Criando um ReferenceError

try {
  throw new ReferenceError('Olá', 'arquivoQualquer.js', 10);
} catch (e) {
  console.log(e instanceof ReferenceError); // true
  console.log(e.message);                   // "Olá"
  console.log(e.name);                      // "ReferenceError"
  console.log(e.fileName);                  // "arquivoQualquer.js"
  console.log(e.lineNumber);                // 10
  console.log(e.columnNumber);              // 0
  console.log(e.stack);                     // "@Scratchpad/2:2:9\n"
}

Especificações

Especificação Estado Comentário
ECMAScript 3rd Edition (ECMA-262) Padrão Definição inicial.
ECMAScript 5.1 (ECMA-262)
The definition of 'ReferenceError' in that specification.
Padrão  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'ReferenceError' in that specification.
Padrão  
ECMAScript Latest Draft (ECMA-262)
The definition of 'ReferenceError' in that specification.
Rascunho  

Compatibilidade com browsers

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suporte básico (Yes) (Yes) (Yes) (Yes) (Yes)
Característica Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Suporte básico (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Veja também

Etiquetas do documento e colaboradores

Colaboradores desta página: liliansilva
Última atualização por: liliansilva,