Le glossaire · Une idée plus claire
Égalité simple (Loose Equality)
L'égalité simple (==) effectue une conversion des deux valeurs à comparer avant d'effectuer la comparaison réelle.
Mis à jour le
En JavaScript la comparaison simple se représente avec la syntaxe == (double égalité), il n'est pas recommandé de l'utiliser car son résultat peut être très hasardeux.
On privilégiera généralement l'égalité stricte.
console.log("" == 0) // Vaut vrai, égalité simple
console.log("" === 0) // Vaut faux, égalité strictePourquoi l'égalité simple est source de bugs
L'égalité simple (==, loose equality) compare deux valeurs après les avoir converties vers un type commun. Cette conversion implicite est une conséquence du typage dynamique de JavaScript.
Exemples : 0 == "" vaut true, 0 == "0" vaut true, mais "" == "0" vaut false ; null == undefined vaut true. Ces règles de conversion sont difficiles à mémoriser et produisent des bugs discrets.
C'est pourquoi on utilise presque toujours l'égalité stricte (===), qui ne convertit rien. Un outil comme TypeScript aide aussi à repérer ces comparaisons ambiguës avant l'exécution.
La prochaine étape
Et si on donnait forme
à votre idée ?
30 minutes pour parler de votre projet, de vos enjeux et de la suite.