22 junho 2022

Michelly Oliveira

Como converter string para number em Javascript

    Nenhum comentário:

 


Há muitas maneiras de converter uma string em um número usando JavaScript. Mas como isso se parece no código?

Neste artigo, mostrarei 11 maneiras de converter uma string em um número.


1 - Como converter uma string em um número em JavaScript usando a função Number()

Uma maneira de converter uma string em um número seria usar a função Number().

Neste exemplo, temos uma string chamada quantity com o valor de "12".


const quantity = "12";


Se usamos o operador typeof em quantity, ele retornará o tipo de string.


console.log(typeof quantity);

 


Podemos converter quantity em um número usando a função Number assim:


Number(quantity);


Podemos verificar que agora é um número usando o operador typeof novamente.


console.log(typeof Number(quantity));

 


Se você tentasse passar um valor que não pode ser convertido em um número, o valor de retorno seria NaN(Not a Number).


console.log(Number("awesome"));




2 - Como converter uma string em um número em JavaScript usando a função parseInt()

Outra maneira de converter uma string em um número é usar a função parseInt(). Esta função recebe uma string e uma raiz opcional.

Uma raiz é um número entre 2 e 36 que representa a base em um sistema numérico. Por exemplo, uma base de 2 representaria o sistema binário, enquanto uma base de 10 representaria o sistema decimal.

Podemos usar a variável quantity anterior para converter essa string em um número.


const quantity = "12";

console.log(parseInt(quantity, 10));


O que acontece se eu tentar mudar a variável quantity para "12.99"? O resultado usando parseInt() será o número 12,99?


const quantity = "12.99";

console.log(parseInt(quantity, 10));

 


Como você pode ver, o resultado é um inteiro arredondado. Se você quiser retornar um número de ponto flutuante, precisará usar parseFloat().



3 - Como converter uma string em um número em JavaScript usando a função parseFloat()

A função  parseFloat() receberá um valor e retornará um número de ponto flutuante. Exemplos de números de ponto flutuante seriam 12,99 ou 3,14.

Se modificarmos nosso exemplo anterior para usar parseFloat(), o resultado seria o número de ponto flutuante de 12,99.


const quantity = "12.99";

console.log(parseFloat(quantity));



Se você tiver espaços em branco à esquerda ou à direita em sua string, parseFloat() ainda converterá essa string em um número de ponto flutuante.


const quantity = "   12.99    ";

console.log(parseFloat(quantity));



Se o primeiro caractere em sua string não puder ser convertido em número, parseFloat() retornará NaN.


const quantity = "F12.99";

console.log(parseFloat(quantity));

 



4 - Como converter uma string em um número em JavaScript usando o operador unário de mais (+)

O operador unário de mais (+) converterá uma string em um número. O operador irá antes do operando.


const quantity = "12";

console.log(+quantity);

 


Também podemos usar o operador unário de mais (+) para converter uma string em um número de ponto flutuante.


const quantity = "12.99";

console.log(+quantity);

 


Se o valor da string não puder ser convertido em um número, o resultado será NaN.


const quantity = "awesome";

console.log(+quantity);

 




5 - Como converter uma string em um número em JavaScript multiplicando a string pelo número 1

Outra maneira de converter uma string em um número é usar uma operação matemática básica. Você pode multiplicar o valor da string por 1 e ele retornará um número.


const quantity = "12";

console.log(quantity * 1);

 



Como você pode ver, quando multiplicamos o valor de quantity por 1, ele retorna o número 12. Mas como isso funciona?


Neste exemplo, o JavaScript está convertendo nosso valor de string em um número e, em seguida, realizando essa operação matemática. Se a string não puder ser convertida em um número, a operação matemática não funcionará e retornará NaN.


const quantity = "awesome";

console.log(quantity * 1);

 


Este método também funcionará para números de ponto flutuante.


const quantity = "10.5";

console.log(quantity * 1);

 



6 - Como converter uma string em um número em JavaScript dividindo a string pelo número 1

Em vez de multiplicar por 1, você também pode dividir a string por 1. JavaScript está convertendo nosso valor de string em um número e, em seguida, realizando essa operação matemática.


const quantity = "10.5";

console.log(quantity / 1);




7 - Como converter uma string em um número em JavaScript subtraindo o número 0 da string

Outro método seria subtrair 0 da string. Como antes, o JavaScript está convertendo nosso valor de string em um número e, em seguida, realizando essa operação matemática.


const quantity = "19";

console.log(quantity - 0);

 




8 - Como converter uma string em um número em JavaScript usando o operador NOT bit a bit (~)

O operador NOT bit a bit (~) inverterá os bits de um operando e converterá esse valor em um inteiro com sinal de 32 bits. Um inteiro com sinal de 32 bits é um valor que representa um inteiro em 32 bits (ou 4 bytes).


Se usarmos um operador NOT bit a bit (~) em um número, ele executará esta operação: -(x + 1)


console.log(~19);

 



Mas se usarmos dois operadores NOT bit a bit (~), ele converterá nossa string em um número.


const quantity = "19";

console.log(~~quantity);

 



Este método não funcionará para números de ponto flutuante porque o resultado seria um inteiro.


const quantity = "19.99";

console.log(~~quantity);



Se você tentasse usar esse método em caracteres não numéricos, o resultado seria zero.


const quantity = "awesome";

console.log(~~quantity);

 


Esse método tem suas limitações porque começará a quebrar para valores considerados muito grandes. É importante certificar-se de que seu número esteja entre os valores de um inteiro de 32 bits com sinal.


const quantity = "2700000000";

console.log(~~quantity);



Para saber mais sobre o operador NOT bit a bit(~), leia a documentação .



9 - Como converter uma string em um número em JavaScript usando a função Math.floor()

Outra maneira de converter uma string em um número é usar a função Math.floor(). Esta função arredondará o número para o inteiro mais próximo.


const quantity = "13.4";

console.log(Math.floor(quantity));

 



Assim como nos exemplos anteriores, se tentássemos usar caracteres não numéricos, o resultado seria NaN.


const quantity = "awesome";

console.log(Math.floor(quantity));



10 - Como converter uma string em um número em JavaScript usando a função Math.ceil()

A função Math.ceil() arredondará um número para o inteiro mais próximo.


const quantity = "7.18";

console.log(Math.ceil(quantity));



11 - Como converter uma string em um número em JavaScript usando a função Math.round()

A função Math.round() arredondará o número para o inteiro mais próximo.

Se eu tiver o valor de 6,3, então Math.round() retornará 6.


const quantity = "6.3";

console.log(Math.round(quantity));




Mas se eu alterar esse valor para 6,5, Math.round() retornará 7.


const quantity = "6.5";

console.log(Math.round(quantity));



Conclusão

Neste artigo, mostrei 11 maneiras de converter uma string em um número usando JavaScript.

Aqui estão os 11 métodos diferentes discutidos no artigo.


  1. Usando a função Number()
  2. Usando a função parseInt()
  3. Usando a função parseFloat()
  4. Usando o operador unário de mais (+)
  5. Multiplicando a string pelo número 1
  6. Dividindo a string pelo número 1
  7. Subtraindo o número 0 da string
  8. Usando o operador NOT bit a bit (~)
  9. Usando a função Math.floor()
  10. Usando a função Math.ceil()
  11. Usando a função Math.round()


Espero que você tenha gostado deste artigo e boa sorte em sua jornada JavaScript.



Fonte: https://www.freecodecamp.org/news/how-to-convert-a-string-to-a-number-in-javascript/

Próximo
« Anterior
Anterior
Próximo »