Si las variables son los "sustantivos" de la programación (las cosas), los operadores son los verbos y conjunciones. Nos permiten hacer matemáticas, comparar valores y tomar decisiones lógicas.
Piensa en una pantalla de inicio de sesión. ¿Cómo funciona?
Usa operadores: "SI (password === passwordCorrecto && 2FA === true) ENTONCES entrar."
1. Aritmética (Matemáticas)
JavaScript maneja las matemáticas igual que una calculadora.
let precio = 10;
let impuesto = 2;
console.log(precio + impuesto); // Suma
console.log(precio - impuesto); // Resta
console.log(precio * impuesto); // Multiplicación
console.log(precio / impuesto); // División
// El operador "Módulo" (%) da el RESTO
// Útil para verificar si un número es par o impar
console.log(10 % 3); // 1 (Porque 3 entra en 10 tres veces, y sobra 1)2. Atajos de Asignación
Los programadores son perezosos (eficientes). En lugar de escribir x = x + 5, tenemos atajos.
let puntaje = 100;
puntaje += 10; // Igual que: puntaje = puntaje + 10
console.log(puntaje); // 110
puntaje -= 50; // Igual que: puntaje = puntaje - 50
console.log(puntaje); // 60
puntaje++; // Incrementar en 1
console.log(puntaje); // 613. El Peligroso "Doble Igual"
Regla Profesional #1
NUNCA uses ==. SIEMPRE usa ===.== realiza "coerción de tipos", lo que significa que intenta convertir tipos para que coincidan. Esto lleva a errores horribles.=== verifica valor Y tipo (Igualdad Estricta).
const numeroCinco = 5;
const stringCinco = "5";
// Igualdad SUELTA (Mala)
// JS convierte el string "5" al número 5 implícitamente.
console.log(numeroCinco == stringCinco); // true (Espera, ¿qué?)
// Igualdad ESTRICTA (Buena)
// JS ve que uno es Número y otro es String. Diferentes.
console.log(numeroCinco === stringCinco); // false4. Compuertas Lógicas
Estas te permiten combinar múltiples requisitos.
&&(AND/Y): Ambos lados deben ser verdaderos. (ej: Tiene Ticket Y Tiene ID).||(OR/O): Solo un lado necesita ser verdadero. (ej: Pagar con Efectivo O Pagar con Tarjeta).!(NOT/NO): Invierte el valor. (ej: NO logueado).
const esAdulto = true;
const tieneTicket = false;
const esVip = true;
// Lógica de Entrada al Club
const puedeEntrar = (esAdulto && tieneTicket) || esVip;
console.log("¿Puede entrar?", puedeEntrar);
// ¿Por qué true?
// (true && false) es FALSE.
// PERO (false || true) es TRUE. VIP salva el día.