Un opérateur de comparaison compare ses deux opérandes et renvoie un valeur booléenne correspondant au résultat de la comparaison (vraie ou fausse). Les opérandes peuvent être des nombres, des chaînes de caractères, des booléens ou des objets. Les chaînes de caractères sont comparées selon l'ordre lexicographique usuel en utilisant les valeurs Unicode. Dans la plupart des cas, si les deux opérandes ne sont pas du même type, JavaScript tentera de les convertir vers un type approprié. Cette méthode aboutira souvent à une comparaison numérique. Les seules exceptions à cette conversion implicite sont les opérateurs === et !== , qui testent des égalités et inégalités strictes. Ces opérateurs n'effectuent pas de conversion de type. Le tableau qui suit décrit les opérateurs de comparaisons relativement à ce fragment de code :
var var1 = 3; var var2 = 4;
Opérateur | Description | Exemples qui renvoient true |
---|---|---|
Égalité (==) | Renvoie true si les opérandes sont égaux après conversion en valeurs de mêmes types. | 3 == var1
"3" == var1 3 == '3' |
Inégalité (!=) | Renvoie true si les opérandes sont différents. | var1 != 4 var2 != "3" |
Égalité stricte (===) | Renvoie true si les opérandes sont égaux et de même type. Voir Object.is() et égalité de type en JavaScript. | 3 === var1 |
Inégalité stricte (!==) | Renvoie true si les opérandes ne sont pas égaux ou s'ils ne sont pas de même type. | var1 !== "3" 3 !== '3' |
Supériorité stricte (>) | Renvoie true si l'opérande gauche est supérieur (strictement) à l'opérande droit. | var2 > var1 "12" > 2 |
Supériorité ou égalité (>=) | Renvoie true si l'opérande gauche est supérieur ou égal à l'opérande droit. | var2 >= var1 var1 >= 3 |
Infériorité stricte (<) | Renvoie true si l'opérande gauche est inférieur (strictement) à l'opérande droit. | var1 < var2 "2" < "12" |
Infériorité ou égalité (<=) | Renvoie true si l'opérande gauche est inférieur ou égal à l'opérande droit. | var1 <= var2 var2 <= 5 |
Note : => n'est pas un opérateur. Il s'agit de la notation utilisée pour les fonctions fléchées.