Maison  >  Article  >  interface Web  >  Résumé de la conversion de type implicite JS

Résumé de la conversion de type implicite JS

php中世界最好的语言
php中世界最好的语言original
2018-04-18 14:58:021828parcourir

Cette fois, je vais vous apporter un résumé de la conversion de type implicite JS et quelles sont les précautions pour la conversion de type implicite JS. Voici un cas pratique, jetons un coup d'œil.

Il existe généralement quatre situations JavaScript convertira le type de données de la variable.

Table des matières

* if中的条件会被自动转为Boolean类型
 * 会被转为false的数据
 * 会被转为true的数据
* 参与+运算都会被隐式的转为字符串
 * 会被转为空字符串的数据
 * 会被转为字符串的数据
 * 会被转为数据类型标记的数据
* 参与*运算都会被隐式的转为数字
 * 会被转为0的数据
 * 会被转为1的数据
 * 会被转为NaN的数据
* == 运算符
 * 为true的时候
 * 为false的时候

Les conditions dans if seront automatiquement converties en type booléen

Données qui seront converties en fausses

if(false) console.log(2333)
if('') console.log(2333)
if(null) console.log(2333)
if(undefined) console.log(2333)
if(NaN) console.log(2333)

Données qui seront converties en vraies

if(true) console.log(2333) // 2333
if('test') console.log(2333) // 2333
if([]) console.log(2333) // 2333
if({}) console.log(2333) // 2333

Toute personne participant à l'opération + sera implicitement convertie en chaîne

Données qui seront converties en chaîne vide

'str-' + '' // str-
'str-' + []

Données qui seront converties en chaîne

'str-' + '1' // "str-1"
'str-' + 1 // "str-1"
'str-' + false // "str-false"
'str-' + true // "str-true"
'str-' + null // "str-null"
'str-' + undefined // "str-undefined"
'str-' + NaN // "str-NaN"

Données qui seront converties en balises de type de données

'str-' + {} // "str-[object Object]"
'str-' + {a:1} // "str-[object Object]"

Toute personne participant à l'opération *sera implicitement convertie en numéro

Données qui seront converties en 0

2 * '' // 0
2 * [] // 0
2 * false // 0

Données qui seront converties en 1

2 * '1' // 2
2 * [1] // 2
2 * true // 2

Données qui seront converties en NaN

2 * {} // NaN
2 * {a:1} // NaN

== opérateur

Quand c'est vrai

0 == false // true
0 == '' // true
0 == '0' // true
0 == [] // true
0 == [0] // true
1 == true // true
1 == '1' // true
1 == [1] // true
[1] == true // true
[] == false // true

Quand c'est faux

0 == {} // false
0 == null // false
0 == undefined // false
0 == NaN // false
1 == {} // false
1 == null // false
1 == undefined // false
1 == NaN // false
[] == [] // false
[1] == [1] // false
[1] == {} // false
[1] == {a:1} // false
[1] == false // false
[1] == null // false
[1] == undefined // false
[1] == NaN // false
{} == {} // false
{a:1} == {a:1} // false

Remarque : Le tableau vide [] est converti en chaîne vide '' sous l'opérateur + et est converti en nombre 0 sous l'opérateur *. Mais dans l'instruction if, cela devient vrai.

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture recommandée :

JS cliquez pour faire défiler et passer à la lecture des images

JS implémente un système d'évaluation à choix multiples

JS implémente une barre d'affichage dynamique de la progression du processus

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