Maison > Article > interface Web > Quels sont les deux types de conversion de types de données en JavaScript ?
Deux types de conversion de type de données en JavaScript : 1. Conversion de type explicite (également appelée conversion de type forcée), qui convertit principalement les données en utilisant les fonctions intégrées de JavaScript ; 2. Conversion de type implicite, qui fait référence à la conversion automatique par JavaScript selon à l'environnement informatique Le type de valeur.
L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.
JavaScript est un langage à typage dynamique faiblement typé. Les variables n'ont aucune restriction de type et peuvent se voir attribuer n'importe quelle valeur à tout moment.
var x = y ? 1 : 'a';
Dans le code ci-dessus, le fait que la variable x soit une valeur numérique ou une chaîne dépend de la valeur d'une autre variable y. Lorsque y est vrai, x est une valeur numérique ; lorsque y est faux, x est une chaîne. Cela signifie que le type de x ne peut pas être connu au moment de la compilation et doit attendre l'exécution.
Bien que le type de données des variables soit incertain, divers opérateurs ont des exigences concernant les types de données. Si l'opérateur constate que le type de l'opérateur ne correspond pas au type attendu, il convertira automatiquement le type. Par exemple, l'opérateur de soustraction s'attend à ce que les opérateurs gauche et droit soient des valeurs numériques, et sinon, il les convertira automatiquement en valeurs numériques.
'4' - '3' // 1
Dans le code ci-dessus, bien que deux chaînes soient soustraites, la valeur de résultat 1 sera toujours obtenue. La raison en est que JavaScript convertit automatiquement l'opérateur en valeur numérique.
Conversion de type de données en javascript
La conversion de type de données en js est généralement divisée en deux types, à savoir la conversion de type obligatoire et la conversion de type implicite (en utilisant la conversion de type de variable faible js).
La conversion de type explicite s'effectue principalement à l'aide des fonctions intégrées de JavaScript ;
La conversion de type implicite signifie que JavaScript convertit automatiquement le type d'une valeur en fonction de l'environnement informatique.
En js, si vous souhaitez convertir un objet en valeur primitive, vous devez appeler la fonction interne toPrimitive(), alors comment ça marche ?
f35d6e602fd7d0f0edfa6f7d103c1b57 toPrimitive(input,preferredType)
input est la valeur d'entrée, et PreferredType est le type qui devrait être converti. Il peut être String ou Number, ou non transmis.
1) Si le type converti est number, les étapes suivantes seront effectuées :
1. 如果input是原始值,直接返回这个值; 2. 否则,如果input是对象,调用input.valueOf(),如果结果是原始值,返回结果; 3. 否则,调用input.toString()。如果结果是原始值,返回结果; 4. 否则,抛出错误。
2) Si le type converti est String, 2 et 3 seront exécutés de manière interchangeable, c'est-à-dire que la méthode toString() sera exécutée d'abord.
3) Vous pouvez omettre le type préféré. À ce stade, la date sera considérée comme une chaîne et les autres valeurs seront traitées comme un nombre.
① Si l'entrée est le type Date intégré, le type préféré est traité comme String
② Sinon, il est traité comme Number, appelez d'abord valueOf, puis appelez toString
2cc198a1d5eb0d3eb508d858c9f5cbdbToBoolean(argument)
tapez | pour renvoyer le résultat E UnderfinEdnfalse |
null | false |
Boolean | Argument |
number | est uniquement lorsque le l'argument est +0, -0 ou nan, autre Renvoie True |
String | Uniquement lorsque l'argument est une chaîne vide (la longueur est 0), renvoie false ; sinon, renvoie true |
true | |
true | |
Sauf sous-fin, null, false, NaN,'',0,-0, tous les autres renvoient true | 5bdf4c78156c7953567bb5a0aef2fc53ToNumber(argument) |
Type
renvoie le résultatNaN | |
+0 | |
l'argument est vrai, renvoie 1 est faux, renvoie +0 | |
argument | |
Convertir la chaîne in Le contenu est converti en nombre, tel que '23'=>23; Si la conversion échoue, NaN est renvoyé, tel que '23a'=>NaN | |
renvoie une exception TypeError | |
** D'abord primValue= toPrimitive(argument,number), puis utilisez ToNumber(primValue)** | |
"sous-fined" | |
"null" | |
l'argument est vrai, return "true" est false, return "false" | ; |
Utilisez une chaîne pour représenter ce nombre | |
argument | |
renvoie une exception TypeError | |
**Premier primValue= toPrimitive(argument,string), puis utilisez ToString( Valeurprim )** pour primValue |
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!