No JavaScript, você pode converter o valor da string em um número das três maneiras a seguir:
1. Número de chamada () para converter o tipo de valor da string.
2.ParseInt ().
3.parsefloat ().
Número()
Usar a função número () para lançar uma string é a maneira mais direta. No entanto, essa abordagem tem uma limitação: se a corda cortar os caracteres iniciantes e finais do espaço em branco e não for uma corda numérica pura, o resultado final é NAN. JavaScript de David Flanagan A 6ª edição do Guia Definitivo, a Seção 3.8.2 mencionou que, ao usar a função número () para executar a conversão de sequência em número, a função aceita apenas seqüências decimais, mas os resultados dos testes mostram que esse não é o caso. A função número () pode aceitar "0xff" como um parâmetro e convertê -lo em um valor numérico de 255.
A cópia do código é a seguinte:
var a = "42";
var b = "42mm";
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 ()
A função parseInt () pode converter uma string em um número inteiro. Comparado com a função número (), a função parseInt () pode não apenas analisar seqüências numéricas puras, mas também analisar seqüências numéricas parciais começando com números (seqüências parciais não dígitos serão removidas durante o processo de conversão). Vale a pena notar que, quando a função parseint () analisa uma corda de ponto flutuante, o método usado para arredondamento é "truncado".
Além da sequência como o primeiro parâmetro, a função parseInt () também pode aceitar qualquer número inteiro entre 2 e 36 como o segundo parâmetro para especificar o número de divisões durante o processo de conversão.
A cópia do código é a seguinte:
var b = "42mm";
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 ()
Como o parseint (), o parsefloat () também pode analisar seqüências numéricas parciais começando com números (as seqüências parciais não numéricas serão removidas durante o processo de conversão). Ao contrário de parseint (), parsefloat () pode converter uma string em um número de ponto flutuante; Mas, ao mesmo tempo, o parsefloat () aceita apenas um parâmetro e só pode processar seqüências decimais.
A cópia do código é a seguinte:
var c = "0xff";
var d = "42.34";
console.log (parsefloat (c)); // 0, porque "0xff" começa com 0
console.log (parsefloat (d)); // 42.34
console.log (parsefloat (". 1")); // 0.1