Maison  >  Article  >  interface Web  >  Y a-t-il une différence entre =, == et === en javascript ?

Y a-t-il une différence entre =, == et === en javascript ?

青灯夜游
青灯夜游original
2021-10-19 12:01:164538parcourir

Il y a une différence. En JavaScript, "=" est un opérateur d'affectation, qui attribue la valeur de droite à la variable de gauche ; tandis que "==" et "===" sont des opérateurs de comparaison, utilisés pour comparer si les expressions de gauche et les côtés droits sont égaux. "==" effectuera la conversion de type des valeurs nécessaires avant la comparaison d'égalité ; tandis que "===" n'effectuera pas de conversion de type.

Y a-t-il une différence entre =, == et === en javascript ?

L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.

La différence entre =, == et === en javascript

"=" est l'opérateur d'affectation, "==" et "===" sont des opérateurs de comparaison

  • "= "operator

    "=" est l'opérateur d'affectation le plus simple, qui attribue la valeur du côté droit de l'opérateur à la variable du côté gauche de l'opérateur

  • "==" et "===" opérateurs

    eux Ils sont utilisés pour comparer si les expressions des côtés gauche et droit de l'opérateur sont égales.

"==" signifie égalité, "===" signifie égalité stricte

Lors de la comparaison de doubles signes égaux : vérifiez d'abord les types de données des deux opérandes, s'ils sont identiques, effectuez === comparaison, si différent, nous sommes prêts à effectuer une conversion de type pour vous, convertir vers le même type avant la comparaison, et quand === comparaison, si les types sont différents, c'est directement faux

  • Double signe égal = = :

    (1) Si les deux types de valeur sont identiques, alors comparez trois signes égaux (===)

    (2) Si les deux types de valeur sont différents, ils peuvent être égaux et la conversion de type doit être effectué selon les règles suivantes avant comparaison :

      1) Si l'un est nul et l'autre indéfini, alors ils sont égaux

      2) Si l'un est une chaîne et l'autre est une valeur numérique, convertissez la chaîne en une valeur numérique puis comparez-la

  • Triple signe égal === :

      (1) Si les types sont différents, ils ne doivent pas être égaux

      (2) Si les deux sont des valeurs numériques et qu'ils sont la même valeur, alors ils sont égaux ; si au moins l’un d’eux est NaN, alors ils ne sont pas égaux ; (Pour déterminer si une valeur est NaN, vous ne pouvez utiliser que isNaN() pour déterminer)

      (3) Si les deux sont des chaînes et que les caractères à chaque position sont les mêmes, alors ils sont égaux, sinon ils ne sont pas égaux.

      (4) Si les deux valeurs sont vraies ou fausses, alors elles sont égales

      (5) Si les deux valeurs font référence au même objet ou fonction, alors elles sont égales, sinon elles ne sont pas égales

      ( 6) Si les deux valeurs Si les deux valeurs sont nulles ou indéfinies, alors elles sont égales

[Apprentissage recommandé : Tutoriel vidéo javascript]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn