Maison > interface Web > Questions et réponses frontales > Comment convertir des caractères en nombres en javascript

Comment convertir des caractères en nombres en javascript

青灯夜游
Libérer: 2021-10-08 16:29:33
original
2618 Les gens l'ont consulté

Comment convertir des caractères en nombres en JavaScript : 1. Utilisez l'instruction "parseInt(value)" ; 2. Utilisez l'instruction "parseFloat(value)" ; 3. Utilisez l'opérateur de multiplication, syntaxe "value * 1" ; , utilisez l'instruction "Number(value)".

Comment convertir des caractères en nombres en javascript

L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.

1. Utilisez parseInt()

parseInt() est une méthode globale qui peut convertir des valeurs en entiers. Le processus de conversion est le suivant :

  • Analysez d'abord le caractère à la position 0. S'il ne s'agit pas d'un nombre valide, NaN est renvoyé directement.

  • Si le caractère en position 0 est un nombre ou peut être converti en un nombre valide, continuez à analyser le caractère en position 1. S'il ne s'agit pas d'un nombre valide, renvoyez directement le nombre valide en position 0.

  • Et ainsi de suite, en analysant chaque caractère un par un dans l'ordre de gauche à droite jusqu'à ce qu'un caractère non numérique soit trouvé.

parseInt() convertira tous les caractères numériques légaux analysés précédemment en valeurs numériques et les renverra.

console.log(parseInt("123abc"));  //返回数字123
console.log(parseInt("1.73"));   //返回数字1
console.log(parseInt(".123"));   //返回值NaN
Copier après la connexion

Les points dans les nombres à virgule flottante sont des caractères illégaux pour parseInt(), donc la partie décimale de la valeur n'est pas convertie.

2. Utilisez la fonction parseFloat()

parseFloat() est également une méthode globale, elle peut convertir la valeur en un nombre à virgule flottante, c'est-à-dire qu'elle peut identifier le premier point décimal qui apparaît et le second. le point décimal est considéré comme illégal. Le processus d'analyse est le même que la méthode parseInt().

console.log(parseFloat("1.234.5"));  //返回数值 1.234
Copier après la connexion

Le paramètre de parseFloat() doit être une chaîne sous forme décimale et les chaînes numériques octales ou hexadécimales ne peuvent pas être utilisées. Dans le même temps, le 0 devant le nombre (identification du nombre octal) sera ignoré et le nombre hexadécimal renverra 0.

console.log(parseFloat("123"));  //返回数值 123
console.log(parseFloat("123abc"));  //返回数值 123
console.log(parseFloat("010"));  //返回数值 10
console.log(parseFloat("0x10"));  //返回数值 0
console.log(parseFloat("x10"));  //返回数值 NaN
Copier après la connexion

3. Utilisez l'opérateur de multiplication

Si la variable est multipliée par 1, la variable sera automatiquement convertie en valeur numérique par JavaScript. Après multiplication par 1, le résultat reste inchangé, mais le type de la valeur est converti en valeur numérique. Si la valeur ne peut pas être réduite à un nombre légal, NaN est renvoyé.

var a = 1;  //数值
var b = "1";  //数字字符串
console.log(a + (b * 1));  //返回数值 2
Copier après la connexion

4. Utilisez la fonction Number()

La coercition Number() est différente des méthodes parseInt() et parseFloat() convertit la valeur globale, pas la valeur locale.

console.log(Number("123abc"));  //返回NaN
console.log(Number("123"));  //返回数值123
Copier après la connexion

【Apprentissage recommandé : Tutoriel avancé javascript

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal