Guía Completa de Variables en JS: var, let y const

Publicado: 06/08/2025 Por: Juan Felipe Orozco Cortés

Bienvenido a la guía definitiva sobre variables en JavaScript. Si estás empezando a programar, o incluso si ya tienes experiencia pero aún te confundes con var, let y const, has llegado al lugar correcto.

Piensa en una variable como una caja etiquetada donde puedes guardar información. Puedes ponerle un nombre (la etiqueta) y guardar un valor dentro (un número, un texto, etc.) para usarlo más tarde en tu programa.

En esta guía, exploraremos las tres formas de "crear cajas" en JavaScript, desde la forma clásica hasta las modernas, y te daremos reglas claras sobre cuándo usar cada una.

El Clásico: var (La Forma Original)

Durante muchos años, var fue la única manera de declarar variables. Aunque hoy en día su uso se desaconseja, es crucial entender cómo funciona. Sus dos características principales son su ámbito de función (function scope) y el hoisting.

1. Ámbito de Función (Function Scope)

Una variable declarada con var solo es local a la función donde se creó. No respeta bloques como if o bucles for, lo que puede causar reescrituras inesperadas de variables.

function miFuncion() {
  var saludo = "Hola";
  if (true) {
    var saludo = "Hola de nuevo"; // ¡Esta línea REESCRIBE la variable anterior!
    console.log(saludo); // Imprime "Hola de nuevo"
  }
  console.log(saludo); // Imprime "Hola de nuevo", ¡inesperado!
}
miFuncion();

2. Hoisting (Elevación)

El hoisting es un comportamiento de JavaScript donde las declaraciones con var son "movidas" al inicio de su ámbito antes de que el código se ejecute. Solo se eleva la declaración, no la asignación, resultando en un valor undefined si se accede antes.

console.log(miVariable); // Imprime "undefined", no da error.
var miVariable = "Soy un valor";
console.log(miVariable); // Imprime "Soy un valor"

// Lo que JS interpreta es esto:
// var miVariable;
// console.log(miVariable);
// miVariable = "Soy un valor";

Los Sucesores Modernos: let y const

Para solucionar los problemas de var, se introdujeron let y const. Ambas tienen ámbito de bloque (block scope), lo que significa que solo existen dentro del bloque {...} donde fueron declaradas, haciendo el código mucho más predecible.

let: Para variables que cambian

Usa let cuando necesites una variable cuyo valor pueda ser reasignado. A diferencia de var, respeta el ámbito de bloque.

Estás viendo solo el 60% del contenido. ¡Únete a la Membresía Premium! para acceder al contenido completo.

← Volver a Guías

Comentarios y Valoraciones

No hay comentarios aún. ¡Sé el primero en opinar!