Operadores de Comparación en JavaScript

Los operadores de comparación se utilizan para comparar dos valores y devolver un resultado booleano (true o false). Son fundamentales para tomar decisiones en el flujo del programa, como en las estructuras condicionales (if, else) y los bucles.

script.js

				
					let edad = 18;

// Comprobar si la edad es igual a 18
if (edad === 18) {
    console.log("Tienes 18 años exactamente.");
}

// Comprobar si la edad es mayor de 18
if (edad > 18) {
    console.log("Eres mayor de edad.");
}

// Comprobar si la edad es menor o igual a 17
if (edad <= 17) {
    console.log("Eres menor de edad.");
}

// Combinación de comparación con desigualdad estricta
let permiso = "18";
if (permiso !== edad) {
    console.log("El permiso no coincide con la edad.");
}

				
			

Tipos de operadores de comparación

OperadorDescripciónEjemploResultado
==Igualdad (débil)5 == "5"true
===Igualdad estricta (tipo y valor)5 === "5"false
!=Desigualdad (débil)5 != "5"false
!==Desigualdad estricta (tipo y valor)5 !== "5"true
>Mayor que7 > 5true
<Menor que3 < 8true
>=Mayor o igual7 >= 7true
<=Menor o igual4 <= 5true

Diferencia entre igualdad débil (==) e igualdad estricta (===)

🔸== (débil): Compara los valores después de convertirlos al mismo tipo. Esto puede causar resultados inesperados debido a la conversión implícita de tipos (coerción).

🔸=== (estricta): Compara tanto el valor como el tipo de los datos. Es más seguro y recomendado en la mayoría de los casos.

				
					console.log(5 == "5");  // true (igualdad débil: convierte "5" en número)
console.log(5 === "5"); // false (igualdad estricta: tipos diferentes)

				
			

Ejemplos prácticos de operadores de comparación

1. Igualdad y desigualdad

				
					let a = 10;
let b = "10";

console.log(a == b);  // true (igualdad débil)
console.log(a === b); // false (igualdad estricta)

console.log(a != b);  // false (desigualdad débil)
console.log(a !== b); // true (desigualdad estricta)

				
			

2. Comparaciones mayores y menores

				
					let x = 15;
let y = 20;

console.log(x > y);   // false (15 no es mayor que 20)
console.log(x < y);   // true  (15 es menor que 20)
console.log(x >= 15); // true  (15 es igual o mayor que 15)
console.log(x <= 10); // false (15 no es menor o igual que 10)

				
			

Comparación de valores especiales

🔸 undefined y null

				
					console.log(undefined == null);  // true (igualdad débil los considera iguales)
console.log(undefined === null); // false (estricta: tipos diferentes)

				
			

🔸 NaN (Not-a-Number)

NaN no es igual a ningún valor, ni siquiera a sí mismo.

				
					console.log(NaN == NaN);  // false
console.log(NaN === NaN); // false

// Usa la función isNaN() para comprobar si un valor es NaN
console.log(isNaN(NaN));  // true

				
			

Ejercicio Práctico

Declara dos variables, a y b con valores 8 y "8". Comprueba:

  • Si son iguales usando == y ===.
  • Si son diferentes usando != y !==.

Crea un programa que verifique si una variable x es:

  • Mayor que 10.
  • Menor o igual a 20.

Escribe un código que compruebe si una variable score tiene un valor válido:

  • Si está entre 0 y 100 (ambos incluidos), muestra «Puntuación válida».
  • Si no, muestra «Puntuación no válida».