Comment comprendre =, == et === en JavaScript
迷茫
迷茫 2017-06-30 09:58:46
0
6
1002

Comment comprendre =, == et === en JavaScript, et comment clarifier la relation entre ces trois ?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

répondre à tous(6)
大家讲道理

= : opération mission

== : Utilisé pour juger si deux valeurs sont égales, mais le jugement ici est le résultat d'une conversion implicite. Par exemple

1 == '1';  // true
1 == true; // true
0 == false; // true

=== : Elle est également utilisée pour juger si deux valeurs sont égales, mais il n'y a pas de processus de conversion implicite, mais un jugement direct, c'est pourquoi on l'appelle aussi égalité/congruence absolue.

1 === '1';  // false
1 === true; // false
0 === false; // false

1. Pour les types de base tels que chaîne et nombre, il existe une différence entre == et ===

  • Comparaison entre différents types, == compare les "valeurs converties dans le même type" pour voir si les "valeurs" sont égales, ===si les types sont différents, le résultat sera inégal

  • Comparaison de même type, comparaison directe de "valeur", le résultat sera le même

2. Pour les types avancés tels que Array et Object, il n'y a pas de différence entre == et ===

Effectuer une comparaison « adresse de pointeur »

3. Il existe une différence entre les types de base et les types avancés, == et ===

  • Pour ==, convertissez le type avancé en type de base et effectuez une comparaison de "valeur"

  • Parce que les types sont différents, le résultat de === est faux

我想大声告诉你

'=' : signifie affectation,

var a = 1,
    b = 2;
return a = b;    //返回2,为a赋值b,即a为2

'==' : Déterminez si les valeurs sont les mêmes, pas le type

var a = 1,
    b = '1';
return a == b;    //返回true

'===' : jugement précis, non seulement de la valeur mais aussi du type

var a = 1,
    b = '1';
return a === b;    //返回false

1. Pour les types de base tels que chaîne et nombre, il existe une différence entre == et ===

  • Comparaison entre différents types, == compare les "valeurs converties dans le même type" pour voir si les "valeurs" sont égales, ===si les types sont différents, le résultat sera inégal

  • Comparaison de même type, comparaison directe de "valeur", le résultat sera le même

2. Pour les types avancés tels que Array et Object, il n'y a aucune différence entre == et === pour la comparaison "adresse du pointeur"

3. Il existe une différence entre les types de base et les types avancés, == et ===

  • Pour ==, convertissez le type avancé en type de base et effectuez une comparaison de "valeur"

  • Parce que les types sont différents, le résultat de === est faux

学习ing

= est l'opérateur d'affectation

let a=b // 将值b赋给变量a

== et === sont des opérateurs de comparaison

a == b 比较a与b值是否相等
a === b 比较a与b是否全等,值和类型都要相同
学霸

== effectuera une conversion implicite du type de données, === ne le fera pas, il comparera simplement si les deux côtés sont vraiment égaux
http://www.softwhy.com/articl...

仅有的幸福
  1. "=" est utilisé pour attribuer des valeurs, attribuer des valeurs directement.

  2. L'opérateur "==" convertira d'abord puis fonctionnera.

  3. "==="Absolument égal, égal seulement si les valeurs et les types des deux côtés sont égaux.

巴扎黑

Utilisez autant que possible === ==Il est facile d'avoir des problèmes

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal