Maison >interface Web >js tutoriel >Analyse des exemples de conversion de type explicite javascript_compétences javascript

Analyse des exemples de conversion de type explicite javascript_compétences javascript

WBOY
WBOYoriginal
2016-05-16 16:02:231230parcourir

L'exemple de cet article décrit la méthode de conversion de type explicite en javascript. Partagez-le avec tout le monde pour votre référence. L'analyse spécifique est la suivante :

Bien que js puisse effectuer de nombreuses conversions de type automatiques, il est parfois nécessaire d'effectuer des conversions de type explicites ou de rendre la logique du code claire et lisible.

Le moyen le plus simple d'effectuer une conversion de type d'affichage est d'utiliser la fonction Boolean(), Number(), String() ou Object() :

Number("3") //3
String(false)  //"false"
false.toString()//同上
Boolean([]) //true
Object(3)  //new Number(3)

Certains opérateurs en js effectueront une conversion de type implicite, tels que :
Si un opérande de l'opérateur est une chaîne, il convertit l'autre opérande en chaîne
; Les opérateurs unaires convertissent leurs opérandes en nombres ;
Un dollar ! L'opérateur convertit l'opérande en valeur booléenne et l'annule
; Vous pouvez souvent voir l'utilisation de conversion de type suivante dans le code :

x+"" //等价于String(x)
+x //等价于Number(x)
x-0 //同上
!!x //等价于Boolean(x),是双叹号哦

La méthode toString() définie par la classe Number peut convertir des nombres en représentations sous forme de chaîne d'autres nombres de base (entre 2 et 36) selon la base de conversion (base) :

var n =11;
bin_str = n.toString(2);
oct_str = "0" + n.toString(8);
hex_str = "0x" + n.toString(16);

La classe Number définit également 3 autres méthodes pour les scénarios de conversion de type nombre en chaîne :
toFixed() convertit un nombre en chaîne en fonction du nombre spécifié de chiffres après la virgule décimale. Il n'utilise jamais de notation exponentielle.

11.113344.toFixed(5) //"11.11334"

toExponential() utilise la notation exponentielle pour convertir le nombre en une chaîne de forme exponentielle, avec un seul chiffre avant la virgule décimale et le nombre de chiffres après la virgule décimale spécifié par le paramètre :

11.113359.toExponential(5) //"1.11134e+1"

toPrecision() convertit un nombre en chaîne en fonction du nombre spécifié de chiffres significatifs, ou le convertit sous forme exponentielle si le nombre de chiffres significatifs est inférieur au nombre de parties entières du nombre.
Les 3 méthodes ci-dessus arrondiront ou compléteront 0 de manière appropriée.

Il convient de noter que la fonction Number() mentionnée ci-dessus ne peut être convertie qu'en fonction de nombres décimaux et que les caractères illégaux ne peuvent pas apparaître. Nous pouvons utiliser la fonction globale (méthode n'appartenant à aucune classe) parseInt ou la fonction parseFloat pour convertir une chaîne en nombre

;

parseInt() analyse uniquement les entiers, tandis que parseFloat() peut analyser les entiers et les nombres à virgule flottante.

Si le préfixe de chaîne est "0x" ou "0X", parseInt() l'interprétera comme un nombre hexadécimal ; parseInt et parseFloat ignoreront n'importe quel nombre d'espaces de début et analyseront autant de caractères numériques que possible ; le premier caractère autre qu'un espace est un nombre illégal, NaN est renvoyé.

parseInt peut recevoir un deuxième paramètre facultatif, qui spécifie la base de conversion numérique. La plage de valeurs est comprise entre 2 et 36.

J'espère que cet article sera utile à la conception de la programmation JavaScript de chacun.

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