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

ReferenceError

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 ReferenceError representa un error cuando se hace referencia a una variable inexistente.

Constructor

ReferenceError()

Crea un nuevo objeto ReferenceError.

Propiedades de la instancia

ReferenceError.prototype.message

Mensaje de error. Aunque ECMA-262 especifica que ReferenceError debe proporcionar su propia propiedad message, en SpiderMonkey, hereda Error.prototype.message.

ReferenceError.prototype.name

Nombre del error. Heredado de Error.

ReferenceError.prototype.fileName

Ruta al archivo que generó este error. Heredado de Error.

ReferenceError.prototype.lineNumber

Número de línea en el archivo que generó este error. Heredado de Error.

ReferenceError.prototype.columnNumber

Número de columna en la línea que generó este error. Heredado de Error.

ReferenceError.prototype.stack

Seguimiento de la pila. Heredado de Error.

Ejemplos

Capturar un ReferenceError

js
try {
  let a = undefinedVariable;
} catch (e) {
  console.log(e instanceof ReferenceError); // true
  console.log(e.message); // "undefinedVariable no 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"
}

Crear un ReferenceError

js
try {
  throw new ReferenceError("Hola", "someFile.js", 10);
} catch (e) {
  console.log(e instanceof ReferenceError); // true
  console.log(e.message); // "Hola"
  console.log(e.name); // "ReferenceError"
  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"
}

Especificaciones

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

Compatibilidad con navegadores

Ve también