Lingua-e
JavaScript

¿Qué significa ReferenceError?

← Errores

Un ReferenceError se lanza en JavaScript cuando intentas usar una variable que no ha sido declarada, o cuando accedes a una variable let o const antes de que haya sido inicializada. Esto frecuentemente es causado por la zona muerta temporal (temporal dead zone) de las declaraciones let/const.

Por qué ocurre

  • Acceder a una variable let o const antes de su línea de declaración (zona muerta temporal).
  • Error tipográfico en el nombre de la variable que no coincide con ninguna variable declarada.
  • Usar una variable en un scope donde no fue declarada.
  • Olvidar declarar una variable con let, const o var.

Ejemplos

JavaScript

Código que causa el error

console.log(counter);
let counter = 0;

Error en la terminal

ReferenceError: Cannot access 'counter' before initialization

Cómo solucionarlo

Declara todas las variables con let o const al comienzo del scope donde se usan. Evita depender del hoisting de var. Usa un linter (ESLint con no-use-before-define) para detectar problemas de zona muerta temporal durante el desarrollo.

Código corregido

let counter = 0;
console.log(counter);  // 0

// With var (no ReferenceError but bad practice):
// console.log(count);  // undefined (hoisted)
// var count = 0;

Errores relacionados

¿Listo para practicar tu inglés en el trabajo?

Lingua-e tiene ejercicios interactivos basados en conversaciones reales de developers: standups, code reviews, retrospectivas y más. Practica hasta que salga solo.

Prueba Lingua-e gratis