Una tarea habitual y frecuente en programación es la de realizar comparaciones. Es necesario realizar comprobaciones continuamente para saber si debemos hacer una acción u otra diferente. Existe una serie de operadores de comparación para realizar estas comprobaciones de forma fácil y rápida.
Operadores de igualdad
Los operadores de comparación de igualdad son aquellos que utilizamos en nuestro código (generalmente, en el interior de un if
, aunque no es el único sitio donde podemos utilizarlos) para realizar comprobaciones. Estas expresiones de comparación devuelven un true
o false
.
Son muy similares en otros lenguajes, por lo que si has programado alguna vez, probablemente no te resulten desconocidos:
Nombre | Operador | Descripción |
---|---|---|
Operador de igualdad == | a == b | Comprueba si el valor de a es igual al de b . No comprueba tipo de dato. |
Operador de desigualdad != | a != b | Comprueba si el valor de a no es igual al de b . No comprueba tipo de dato. |
Operador mayor que > | a > b | Comprueba si el valor de a es mayor que el de b . |
Operador mayor/igual que >= | a >= b | Comprueba si el valor de a es mayor o igual que el de b . |
Operador menor que < | a < b | Comprueba si el valor de a es menor que el de b . |
Operador menor/igual que <= | a <= b | Comprueba si el valor de a es menor o igual que el de b . |
Su utilización es muy sencilla, basta con poner los dos operandos juntos, separados por un operador:
const a = 5;
const b = 10;
if (a <= b) {
console.log("Este es el mensaje que aparecerá.");
} else {
console.log("Este mensaje no aparecerá.");
}
Cómo a <= b
es lo mismo que 5 <= 10
y esta condición es verdadera, se ejecutará el primer bloque del if
, ejecutando el primer console.log()
y mostrando el mensaje Este es el mensaje que aparecerá.
. De la misma forma podríamos utilizar el resto de operadores de la tabla anterior, con resultados similares depediendo de la situación.
Operadores de identidad
A parte de los operadores de igualdad, Javascript es un lenguaje que también tiene operadores de identidad. Estos operadores se diferencian a los dos primeros anteriores en que en lugar de dos símbolos de igual ==
, utiliza tres ===
:
Nombre | Operador | Descripción |
---|---|---|
Operador de identidad === | a === b | Comprueba si el valor y el tipo de dato de a es igual al de b . |
Operador no idéntico !== | a !== b | Comprueba si el valor y el tipo de dato de a no es igual al de b . |
En Javascript no es lo mismo utilizar ==
(igualdad) que ===
(identidad). Mientras que el primero sólo comprueba el valor de la comparación, el segundo, el operador de identidad comprueba el valor y el tipo de dato de la comparación.
La diferencia se entiende muy fácil con el siguiente ejemplo:
5 == 5 // true (ambos son iguales, coincide su valor: 5)
"5" == 5 // true (ambos son iguales, coincide su valor: 5)
5 === 5 // true (ambos son idénticos, coincide valor y tipo de dato)
"5" === 5 // false (no son idénticos, coincide valor pero no tipo de dato)
Por esta razón, en Javascript se suele generalizar que es mucho mejor utilizar ===
en lugar de ==
, ya que comprueba ambas cosas, valor y tipo de dato, y por lo tanto la comprobación es mucho más estricta.