Visitar URL original
TypeError - JavaScript | MDN

Esta página ha sido traducida del inglés por la comunidad. Aprende más y únete a la comunidad de MDN Web Docs.

View in English Always switch to English

TypeError

Baseline
Ampliamente disponible
*

Esta característica está consolidada y funciona en muchos dispositivos y versiones de navegador. Está disponible en todos los navegadores desde julio de 2015.

* Algunas partes de esta característica pueden tener distintos niveles de compatibilidad.

El objeto TypeError representa un error cuando una operación no puede ser completada, típicamente (pero no exclusivamente) cuando un valor no es del tipo esperado.

Un TypeError puede ser lanzado cuando:

  • Un operando o argumento pasado a una función es incompatible con el tipo esperado por el operador o función.
  • Cuando se intenta modificar un valor que no puede ser alterado.
  • Cuando se intenta usar un valor de una forma inapropiada.

Constructor

TypeError()

Crea un nuevo objeto TypeError.

Propiedades de instancia

TypeError.prototype.message

Mensaje del error.

TypeError.prototype.name

Nombre del error. Heredado de Error.

TypeError.prototype.cause

Causa del error. Heredado de Error.

TypeError.prototype.fileName

Ruta al archivo que ha lanzado este error. Heredado de Error.

TypeError.prototype.lineNumber

Numero de línea donde se ha lanzado este error. Heredado de Error.

TypeError.prototype.columnNumber

Numero de columna donde se ha lanzado este error. Heredado de Error.

TypeError.prototype.stack

Seguimiento de pila. Heredado de Error.

Ejemplos

Capturar un TypeError

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

Crear un TypeError

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

Especificaciones

Especificación
ECMAScript® 2027 Language Specification
# sec-native-error-types-used-in-this-standard-typeerror

Compatibilidad con navegadores

Véase también