Comment se comporte le code JavaScript pour les comparaisons true == "true"
et (0 == "0")
?Conversions implicites JavaScript en égalité avec une chaîne
1
A
Répondre
3
opérateurs de type contrainte au courant (== et! =) Peut donner des résultats de wierd:
'' == '0' // false
0 == '' // true
0 == '0' // true
false == 'false' // false
false == '0' // true
false == undefined // false
false == null // false
null == undefined // true
' \t\r\n ' == 0 // true
Les === == et les opérateurs de stricte égalité sont toujours preferred.
3
Lorsque vous utilisez == ou! = Si les types des deux expressions sont différentes, il tentera de les convertir en chaîne, un nombre ou Boolean etc
Cependant, vous pouvez utiliser la comparaison identité === ou! == où aucune conversion de type n'est faite, et les types doivent être les mêmes pour être considérés égaux.