JavaScript Fundamentals

Maîtriser les comparaisons numériques en JavaScript

Spread the love

JavaScript offre des capacités robustes pour comparer les nombres, un aspect crucial de la construction d’applications dynamiques et réactives. Ce guide explore les techniques fondamentales pour comparer efficacement les valeurs numériques.

Table des matières

Opérateurs de comparaison

JavaScript fournit six opérateurs de comparaison principaux pour évaluer les relations numériques. Ces opérateurs retournent une valeur booléenne (true ou false).

Opérateur Description Exemple Résultat
=== Égalité stricte (vérifie à la fois la valeur et le type) 5 === 5 true
!== Inégalité stricte 5 !== "5" true
> Supérieur à 10 > 5 true
< Inférieur à 5 < 10 true
>= Supérieur ou égal à 10 >= 10 true
<= Inférieur ou égal à 5 <= 10 true

Pourquoi l’égalité stricte (===) ? L’utilisation de l’égalité stricte est généralement recommandée pour éviter les conversions de type inattendues. L’opérateur d’égalité lâche (==) effectue une conversion de type avant la comparaison, ce qui peut entraîner des erreurs.


5 == "5";  // true (conversion de type)
5 === "5"; // false (égalité stricte ; types différents)

Opérateurs logiques

Les opérateurs logiques combinent plusieurs comparaisons, créant des instructions conditionnelles complexes.

Opérateur Description Exemple Résultat (si num1 = 10, num2 = 5)
&& ET logique (les deux conditions doivent être vraies) (num1 > 5) && (num2 < 10) true
|| OU logique (au moins une condition doit être vraie) (num1 0) true
! NON logique (inverse la valeur booléenne) !(num1 === num2) true

let score = 85;

if (score >= 90 && score = 80 && score < 90) {
  console.log("Note B");
} else {
  console.log("En dessous de la note B");
}

Enchaînement des comparaisons

Pour un code plus propre, enchaînez les comparaisons lorsque vous vérifiez si un nombre se situe dans une plage :


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

Gestion des cas spéciaux (NaN, Infinity)

NaN (Not a Number) et Infinity nécessitent une considération spéciale :

  • NaN n’est jamais égal à lui-même : NaN === NaN est false. Utilisez isNaN() pour vérifier NaN.
  • Infinity et -Infinity ont des comportements de comparaison spécifiques.

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

Conclusion

Maîtriser les comparaisons numériques en JavaScript est fondamental pour construire des applications robustes. En utilisant efficacement les opérateurs de comparaison et logiques, et en comprenant les cas spéciaux, vous pouvez créer un code hautement fonctionnel et fiable.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *