Para que un programa pueda trabajar con información necesita guardar valores, compararlos y transformarlos. En JavaScript utilizamos variables y constantes para hacerlo.
let y const
let edad = 25; const nombre = "Ana";
let permite reasignar el valor. const impide reasignar la referencia.
let puntos = 10; puntos = 15; const pais = "Argentina"; // pais = "Uruguay"; // Error
¿Qué pasó con var?
var existe por compatibilidad histórica, pero en código moderno normalmente preferimos let y const por sus reglas de alcance más predecibles.
Tipos de datos primitivos
El tipo de dato indica qué clase de valor estamos manejando y qué operaciones tienen sentido sobre él. Por ejemplo, no tratamos igual un número que un texto o un valor verdadero/falso.
string;number;boolean;undefined;null;bigint;symbol.
Strings
const nombre = "Lucía"; const mensaje = 'Hola'; const saludo = `Hola, ${nombre}`;
Numbers
const edad = 30; const precio = 1250.50; const resultado = 10 / 3;
JavaScript utiliza el tipo number tanto para enteros como para números con decimales.
Boolean
const activo = true; const terminado = false;
null y undefined
let respuesta; const usuario = null; console.log(respuesta); // undefined console.log(usuario); // null
undefined suele indicar ausencia de asignación. null se utiliza habitualmente para expresar ausencia de valor de forma intencional.
typeof
El operador typeof permite consultar el tipo de un valor. Es útil para depurar y para validar datos antes de procesarlos.
console.log(typeof "Hola"); console.log(typeof 25); console.log(typeof true);
Conversión de tipos
A veces recibimos datos como texto —por ejemplo desde un formulario— aunque necesitemos operar con ellos como números. En esos casos hacemos una conversión explícita con funciones como Number() o String().
const texto = "25"; const numero = Number(texto); console.log(numero + 5); // 30
const edad = 32; const textoEdad = String(edad);
Operadores aritméticos
const a = 10; const b = 3; console.log(a + b); console.log(a - b); console.log(a * b); console.log(a / b); console.log(a % b); console.log(a ** b);
Operadores de comparación
console.log(10 > 5); console.log(10 < 5); console.log(10 >= 10); console.log(10 === 10); console.log(10 !== 5);
=== frente a ==
En código moderno conviene preferir === y !==, porque comparan sin realizar conversiones implícitas inesperadas.
console.log(5 == "5"); // true console.log(5 === "5"); // false
Operadores lógicos
const edad = 22; const tieneEntrada = true; const puedeIngresar = edad >= 18 && tieneEntrada; console.log(puedeIngresar);
&& → AND || → OR ! → NOT
Template literals
Los template literals usan comillas invertidas y permiten insertar expresiones con ${...}. Son más cómodos que concatenar muchos textos con +.
const nombre = "Martín"; const puntos = 120; console.log(`${nombre} tiene ${puntos} puntos`);
NaN
const valor = Number("hola"); console.log(valor); console.log(Number.isNaN(valor));
Ejercicio
Pedí nombre, edad y año actual. Calculá aproximadamente el año de nacimiento y mostrale al usuario un mensaje usando template literals.
Errores comunes
- usar
varpor costumbre; - intentar reasignar una constante;
- sumar strings cuando se esperaban números;
- usar
==sin entender coerción; - confundir
nullconundefined.
¿Te sirvió esta guía? ☕
Si este contenido te ayudó a aprender JavaScript, podés apoyar a Club Programador. Cada aporte ayuda a mantener el sitio online y a seguir publicando material gratuito.
🇦🇷 Apoyar desde Argentina
☕ Invitame un café con Mercado Pago
🌎 Apoyar desde otro país
Seguí aprendiendo JavaScript
← Introducción a JavaScript: qué es, cómo funciona y cómo agregarlo a HTML
Condicionales en JavaScript: if, else, switch y operadores lógicos →
Descubre más desde Club Programador
Suscríbete y recibe las últimas entradas en tu correo electrónico.
2 opiniones en “Variables, constantes, tipos de datos y operadores en JavaScript”