JavaScript Fundamentals

Dominando las Comparaciones Numéricas en JavaScript

Spread the love

JavaScript ofrece capacidades robustas para comparar números, un aspecto crucial para construir aplicaciones dinámicas y receptivas. Esta guía explora las técnicas fundamentales para comparar valores numéricos de manera efectiva.

Tabla de Contenido

Operadores de Comparación

JavaScript proporciona seis operadores de comparación principales para evaluar relaciones numéricas. Estos operadores devuelven un valor booleano (true o false).

Operador Descripción Ejemplo Resultado
=== Igualdad estricta (comprueba el valor y el tipo) 5 === 5 true
!== Desigualdad estricta 5 !== "5" true
> Mayor que 10 > 5 true
< Menor que 5 < 10 true
>= Mayor que o igual a 10 >= 10 true
<= Menor que o igual a 5 <= 10 true

¿Por qué Igualdad Estricta (===)? Generalmente se recomienda usar la igualdad estricta para evitar la coerción de tipo inesperada. El operador de igualdad flexible (==) realiza la conversión de tipo antes de la comparación, lo que puede provocar errores.


5 == "5";  // true (se produce coerción de tipo)
5 === "5"; // false (igualdad estricta; los tipos son diferentes)

Operadores Lógicos

Los operadores lógicos combinan múltiples comparaciones, creando sentencias condicionales complejas.

Operador Descripción Ejemplo Resultado (si num1 = 10, num2 = 5)
&& Y lógico (ambas condiciones deben ser verdaderas) (num1 > 5) && (num2 < 10) true
|| O lógico (al menos una condición debe ser verdadera) (num1 0) true
! NO lógico (invierte el valor booleano) !(num1 === num2) true

let score = 85;

if (score >= 90 && score = 80 && score < 90) {
  console.log("Calificación B");
} else {
  console.log("Por debajo de la Calificación B");
}

Encadenamiento de Comparaciones

Para un código más limpio, encadena comparaciones cuando compruebas si un número se encuentra dentro de un rango:


let edad = 25;
if (18 <= edad && edad < 65) {
  console.log("Adulto");
}

Manejo de Casos Especiales (NaN, Infinito)

NaN (Not a Number) e Infinity requieren una consideración especial:

  • NaN nunca es igual a sí mismo: NaN === NaN es false. Usa isNaN() para comprobar si hay NaN.
  • Infinity y -Infinity tienen comportamientos de comparación específicos.

isNaN(Number("hello")); // true
Infinity > 1000; // true
-Infinity < -1000; // true

Conclusión

Dominar las comparaciones numéricas en JavaScript es fundamental para construir aplicaciones robustas. Al utilizar eficazmente los operadores de comparación y lógicos, y comprender los casos especiales, puedes crear un código altamente funcional y fiable.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *