Una variable en JavaScript es un espacio con nombre en la memoria donde guardas un valor para usarlo después en tu código.
Sin variables, tendrías que repetir cada valor cada vez que lo necesitas. Con variables, escribes el valor una vez y lo reutilizas cuantas veces quieras.
Cómo declarar una variable
JavaScript tiene tres palabras clave para declarar variables: var, let y const.
Cada una tiene reglas diferentes sobre cuándo y cómo puedes cambiar el valor guardado.
Estructura básica
palabra_clave nombreVariable = valor;
let→ para valores que pueden cambiar.const→ para valores que NO cambian.var→ la forma antigua; evítala en código nuevo.
Ejemplo mínimo
let precio = 49;
const tienda = "Liverpool";
En la primera línea declaras una variable llamada precio con el valor 49. En la segunda, declaras una constante tienda con el texto "Liverpool".
let vs const vs var
| Palabra clave | ¿Puede cambiar? | ¿Recomendada? | Alcance |
|---|---|---|---|
let |
Sí | ✅ Sí | Bloque {} |
const |
No | ✅ Sí | Bloque {} |
var |
Sí | ❌ No | Función completa |
Usa const por defecto. Solo cambia a let cuando sepas que el valor va a cambiar. Evita var en proyectos modernos.
Los tipos de datos básicos
JavaScript maneja varios tipos de datos. Aquí están los más importantes para empezar.
1. Número (number)
Guarda valores numéricos: enteros o decimales.
let precioProducto = 18500;
let descuento = 0.15;
No uses comillas con números. Si escribes "18500", JavaScript lo trata como texto, no como número.
2. Texto (string)
Guarda cadenas de caracteres. Siempre van entre comillas simples o dobles.
let nombreProducto = "Gansito Marinela";
let marca = 'Bimbo';
Puedes usar comillas simples '...' o dobles "...". Lo importante es que abres y cierras con el mismo tipo.
3. Booleano (boolean)
Solo tiene dos valores posibles: true o false.
let productoDisponible = true;
let envioGratis = false;
Los booleanos son útiles para tomar decisiones en el código, como mostrar o esconder un botón de compra.
4. Nulo e indefinido (null y undefined)
null→ tú asignas ese valor a propósito para indicar "sin valor".undefined→ JavaScript lo asigna cuando una variable existe pero no tiene valor.
let cupon = null; // Sin cupón por ahora
let codigoPostal; // undefined: no se asignó valor
Ejemplos progresivos con contexto mexicano
Ejemplo 1: Precio de un producto en Liverpool
const nombreArticulo = "Televisión Samsung 55\"";
let precioOriginal = 12500;
let precioOferta = 9999;
console.log(nombreArticulo);
console.log("Precio normal: $" + precioOriginal);
console.log("Precio de oferta: $" + precioOferta);
Resultado en consola:
Televisión Samsung 55"
Precio normal: $12,500
Precio de oferta: $9,999
Aquí usas const para el nombre porque no cambia, y let para los precios porque podrían actualizarse.
Ejemplo 2: Carrito de Mercado Libre
let producto1 = "Licuadora Oster";
let precio1 = 850;
let producto2 = "Cafetera Bimbo";
let precio2 = 1200;
let total = precio1 + precio2;
console.log("Tu carrito en Mercado Libre:");
console.log(producto1 + " → $" + precio1);
console.log(producto2 + " → $" + precio2);
console.log("Total: $" + total);
Resultado en consola:
Tu carrito en Mercado Libre:
Licuadora Oster → $850
Cafetera Bimbo → $1,200
Total: $2,050
Observa cómo sumas dos variables numéricas directamente con +.
Ejemplo 3: Sistema de descuento para OXXO (FEMSA)
const porcentajeDescuento = 0.10; // 10% de descuento
let precioBase = 35;
let esClubMiembro = true;
let precioFinal = precioBase - (precioBase * porcentajeDescuento);
console.log("Producto OXXO");
console.log("¿Es miembro del club? " + esClubMiembro);
console.log("Precio sin descuento: $" + precioBase);
console.log("Precio final: $" + precioFinal);
Resultado en consola:
Producto OXXO
¿Es miembro del club? true
Precio sin descuento: $35
Precio final: $31.5
Aquí mezclas los tres tipos: number, string y boolean en el mismo programa.
Reglas para nombrar variables
El nombre de una variable se llama identificador. Sigue estas reglas:
- ✅ Puede empezar con letra,
_o$. - ✅ Puede contener letras, números,
_y$. - ❌ No puede empezar con número.
- ❌ No puede tener espacios.
- ❌ No puede ser una palabra reservada como
let,const,if,for.
Convención camelCase
En JavaScript se usa camelCase: la primera palabra en minúsculas y cada palabra siguiente empieza con mayúscula.
// ✅ Correcto
let precioProducto = 500;
let nombreCliente = "Ana García";
// ❌ Incorrecto
let Precio_Producto = 500;
let nombre cliente = "Ana García"; // error de sintaxis
Errores comunes
Error 1: Mezclar texto y número sin querer
let precio = "500"; // ← texto, no número
let iva = 80;
let total = precio + iva;
console.log(total); // Resultado: "50080" (no $580)
Cuando sumas un string y un number, JavaScript une los textos en lugar de sumar. Siempre guarda precios sin comillas.
Error 2: Intentar reasignar una constante
const marca = "Bimbo";
marca = "Marinela"; // ❌ TypeError: Assignment to constant variable
const no permite cambiar el valor después de asignarlo. Si necesitas cambiar el valor, usa let.
Error 3: Usar una variable antes de declararla
console.log(stock); // ❌ ReferenceError: Cannot access 'stock' before initialization
let stock = 100;
Siempre declara tus variables antes de usarlas. Con let y const, JavaScript no permite acceder a ellas antes de su declaración.
Error 4: Olvidar que JavaScript distingue mayúsculas
let precioEnvio = 99;
console.log(PrecioEnvio); // ❌ ReferenceError
precioEnvio y PrecioEnvio son dos variables completamente distintas para JavaScript.
Cómo verificar el tipo de un dato
Usa el operador typeof para saber qué tipo de dato tiene una variable.
let unidades = 25;
let nombre = "Gansito";
let activo = true;
let sin_valor = null;
console.log(typeof unidades); // number
console.log(typeof nombre); // string
console.log(typeof activo); // boolean
console.log(typeof sin_valor); // object ← comportamiento histórico de JS
typeof es útil cuando depuras código y quieres confirmar qué tipo de dato está llegando a una variable.
Puntos clave
- Usa
constpara valores que no cambian yletpara valores que sí cambian. Evitavar. - Los tipos de datos principales son:
number,string,boolean,nullyundefined. - Los números van sin comillas. Si les pones comillas, JavaScript los trata como texto y las operaciones matemáticas fallan.
- Nombra tus variables con camelCase (
precioProducto,nombreCliente) para seguir el estándar de la industria. - Usa
typeofpara verificar el tipo de dato de cualquier variable cuando tengas dudas.