== teste une équivalence (42 et "42" sont équivalents en Javascript), === teste une égalité.
Autre astuce : un = en plus signifie plus d'égalité demandée (C'est égal ? Oui, mais… c'est égal ?).
Moi, ça me semble pas compliqué à comprendre… Après, je ne vais pas défendre ce choix (Pourquoi pas un == qui teste l'égalité, et un <=> qui teste l'équivalence ? Ou un = qui teste l'égalité, et un := ou <- pour l'assignation ?). Le typage implicite du Javascript peut poser d'autres problèmes ("a" + 2 + 5 === "a25", mais 2 + 5 + "a" == "7a"), et en soit, Javascript est plein de bizarreries (voir wat cité dans un autre commentaire, mais aussi wtfjs).
[^] # Re: Petite question ...
Posté par daeldir . En réponse au journal Deux nouvelles pour Qt. Évalué à 1.
Un petit moyen simple de comprendre/retenir :
==teste une équivalence (42et"42"sont équivalents en Javascript),===teste une égalité.Autre astuce : un
=en plus signifie plus d'égalité demandée (C'est égal ? Oui, mais… c'est égal ?).Moi, ça me semble pas compliqué à comprendre… Après, je ne vais pas défendre ce choix (Pourquoi pas un
==qui teste l'égalité, et un<=>qui teste l'équivalence ? Ou un=qui teste l'égalité, et un:=ou<-pour l'assignation ?). Le typage implicite du Javascript peut poser d'autres problèmes ("a" + 2 + 5 === "a25", mais2 + 5 + "a" == "7a"), et en soit, Javascript est plein de bizarreries (voir wat cité dans un autre commentaire, mais aussi wtfjs).