En JavaScript, puede convertir el valor de la cadena en un número de las siguientes tres maneras:
1. Número de llamada () para convertir el tipo de valor de cadena.
2.ParseInt ().
3.Parsefloat ().
Número()
Usar la función Número () para lanzar una cadena es la forma más directa. Sin embargo, este enfoque tiene una limitación: si la cadena corta el comienzo y finaliza los caracteres en blanco y no es una cadena numérica pura, el resultado final es Nan. JavaScript de David Flanagan La guía definitiva 6th Edition, Sección 3.8.2 mencionó que cuando se usa la función Number () para realizar una conversión de cadena a número, la función solo acepta cadenas decimales, pero los resultados de la prueba muestran que este no es el caso. La función Número () puede aceptar "0xff" como parámetro y convertirlo en un valor numérico de 255.
La copia del código es la siguiente:
var a = "42";
var b = "42 mm";
var c = "0xff";
var d = "42.34";
console.log (número (a)); // 42
console.log (número (b)); // nan
console.log (número (c)); // 255
console.log (número (d)); // 42.34
parseint ()
La función parseInt () puede convertir una cadena en un entero. En comparación con la función Número (), la función ParseInt () no solo puede analizar las cadenas numéricas puras, sino que también se eliminarán las cadenas numéricas parciales parciales que comienzan con números (las cadenas parciales no dígitas se eliminarán durante el proceso de conversión). Vale la pena señalar que cuando la función ParseInt () analiza una cadena de punto flotante, el método utilizado para redondear es "truncado".
Además de la cadena como el primer parámetro, la función parseInt () también puede aceptar cualquier número entero entre 2 y 36 como el segundo parámetro para especificar el número de divisiones durante el proceso de conversión.
La copia del código es la siguiente:
var b = "42 mm";
var c = "0xff";
var x = "-12.34";
var y = "15.88";
var z = "101010";
console.log (parseint (b)); // 42
console.log (parseint (x)); //-12
console.log (parseint (y)); // 15
console.log (parseint (c)); // 255
console.log (parseint (z, 2)); // 42
console.log (parseint (". 1")); // nan
parsefloat ()
Al igual que ParseInt (), Parsefloat () también puede analizar cadenas numéricas parciales que comienzan con números (se eliminarán las cadenas parciales no numéricas durante el proceso de conversión). A diferencia de parseInt (), parsefloat () puede convertir una cadena en un número de punto flotante; Pero al mismo tiempo, parsefloat () solo acepta un parámetro y solo puede procesar cadenas decimales.
La copia del código es la siguiente:
var c = "0xff";
var d = "42.34";
console.log (parsefloat (c)); // 0, porque "0xff" comienza con 0
console.log (parsefloat (d)); // 42.34
console.log (parsefloat (". 1")); // 0.1