Ir al contenido principal

Lección 3 · Operadores y decisiones

Operadores aritméticos

Con los números del buffet se hacen cuentas todo el tiempo: el total de un pedido, el stock que queda, el vuelto. Los operadores son los signos que hacen esas cuentas.

Operador Qué hace Ejemplo Resultado
+Suma350 + 200550
-Resta500 - 350150
*Multiplica350 * 2700
/Divide700 / 4175
%El resto de la división7 % 21
**Potencia2 ** 38

La precedencia es la de la escuela: primero paréntesis, después multiplicación y división, y al final suma y resta. Y hay una forma corta de sumar a una variable:

let total = 0;
total = total + 350;
total += 350;        // lo mismo que la línea de arriba
total -= 100;        // resta 100
total++;

El total del pedido se arma sumando, y para que no queden decimales raros se redondea al final con Math.round(): Math.round(0.1 + 0.2) * 100 / 100.

Comparaciones

Comparar es preguntar si dos valores son iguales o cuál es mayor. La respuesta siempre es un booleano: true o false.

Operador Pregunta Ejemplo Resultado
===¿Son iguales en valor y tipo?350 === 350true
!==¿Son distintos?350 !== 200true
>¿El izquierdo es mayor?500 > 350true
<¿El izquierdo es menor?500 < 350false
>= / <=Mayor o igual / menor o igual350 >= 350true

Operadores lógicos

Sirven para combinar condiciones: «hay stock y el alumno tiene saldo», «es feriado o es domingo», «no está abierto».

Operador Se lee Es verdadero cuando…
&&YLas dos condiciones son verdaderas.
||OAl menos una es verdadera.
!NoLa condición es falsa (invierte).
const hayStock = true;
const tieneSaldo = false;

console.log(hayStock && tieneSaldo);   // false: falta el saldo
console.log(hayStock || tieneSaldo);   // true: al menos uno
console.log(!hayStock);                // false

Los tres se combinan con paréntesis cuando hay varias condiciones, y el orden importa: a || b && c no es lo mismo que (a || b) && c. Ante la duda, paréntesis.

if y else

Con las comparaciones ya se puede decidir. El if ejecuta un bloque solo si la condición es verdadera:

const stockSandwich = 0;

if (stockSandwich === 0) {
    console.log("No quedan sándwiches");
}

El else agrega el camino alternativo, para cuando la condición es falsa:

if (stockSandwich === 0) {
    console.log("No quedan sándwiches");
} else {
    console.log(`Quedan ${stockSandwich} sándwiches`);
}

Las llaves { } marcan el bloque que se ejecuta. Conviene escribirlas siempre, aunque el bloque tenga una sola línea: evitan errores cuando después se agrega otra instrucción.

else if: varias posibilidades

Cuando hay más de dos casos se encadenan con else if. Se evalúan en orden y se ejecuta solo el primero que sea verdadero:

const total = 2500;

if (total >= 5000) {
    console.log("Descuento del 15%");
} else if (total >= 2000) {
    console.log("Descuento del 10%");
} else if (total >= 1000) {
    console.log("Descuento del 5%");
} else {
    console.log("Sin descuento");
}

Con total = 2500 imprime «Descuento del 10%»: la primera condición es falsa, la segunda verdadera, y ahí se detiene. Las demás ni se miran.

Resumen

  • Aritméticos: + - * / % **, con la precedencia de la escuela.
  • Comparaciones: siempre con === y !==; == convierte tipos y esconde errores.
  • Lógicos: && (y), || (o), ! (no).
  • if ejecuta si la condición es verdadera; else es el camino alternativo.
  • else if encadena casos y ejecuta solo el primero verdadero; el orden importa.

En la próxima lección el programa repite tareas: bucles para recorrer el menú y sumar muchos productos sin escribir una línea por cada uno.

Autoevaluación de la lección 3

Licencia. El material de esta página es elaboración propia de Prof Mauro Bobyk —a partir de las fuentes que detalla el pie del sitio— y se publica bajo una licencia Creative Commons BY-NC-SA 4.0.