TypeError

O  objeto TypeError  representa um erro de quando um valor não é do tipo esperado.

Sintaxe

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

Parâmetros

message
Opcional. Mensagem, descrição do erro
fileName
Opcional. O nome do arquivo contendo o código que causou a exceção
lineNumber
Opcional. O número da linha do código que causou a exeção

Descrição

O TypeError é ativado quando um operador ou argumento passado para uma função é incompativel com o tipo esperado por esse operador ou função.

 

Propriedades

TypeError.prototype (en-US)
Permite a adição de propriedades para o objeto TypeError.

Métodos

O TypeError global não contém métodos por si só, no entanto, ele herda alguns métodos através da cadeia prototype.

Instâncias TypeError

Propriedades

{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypeError/prototype', 'Properties')}}

Métodos

{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypeError/prototype', 'Methods')}}

Exemplos

Capturando um TypeError

try {
  null.f();
} catch (e) {
  console.log(e instanceof TypeError); // true
  console.log(e.message);              // "null has no properties"
  console.log(e.name);                 // "TypeError"
  console.log(e.fileName);             // "Scratchpad/1"
  console.log(e.lineNumber);           // 2
  console.log(e.columnNumber);         // 2
  console.log(e.stack);                // "@Scratchpad/2:2:3\n"
}

Criando um TypeError

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

Especificações

Specification Status Comment
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'TypeError' in that specification.
Padrão  
ECMAScript 5.1 (ECMA-262)
The definition of 'TypeError' in that specification.
Padrão  
ECMAScript 3rd Edition (ECMA-262)
The definition of 'TypeError' in that specification.
Padrão Initial definition

Compatibilidade com navegadores

Estamos convertendo nossos dados de compatibilidade para o formato JSON. Esta tabela de compatibilidade ainda usa o formato antigo, pois ainda não convertemos os dados que ela contém. Descubra como você pode ajudar! (en-US)
Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Veja também