Curso Básico de JavaScript – Convertendo tipos de dados

Convertendo tipos de dados em JavaScript

Às vezes precisamos informar em nosso código exatamente o tipo de dados que deve ser usado no processamento de informações.

Como o JavaScript é uma linguagem não-tipada, existe o risco de um tipo de dado ser interpretado de forma errônea em alguns casos particulares, causando problemas no processamento dos dados.

Podemos converter entre tipos de dados usando funções específicas no JavaScript, como os métodos parseInt() e parseFloat(), entre outras.

Operador typeof

Como operador typeof() podemos descobrir o tipo de um dado ou de uma variável. Veja os exemplos a seguir:

<script>
  document.write(typeof "Fábio" + "<br />");
  document.write(typeof 345.89 + "<br />");
  document.write(typeof 12 + "<br />");
  document.write(typeof true + "<br />");
</script>

Operador typeof() em JavaScript

Converter números para strings

Para converter um número em string, use o método String(), como no exemplo a seguir:

<script>
  n = 20;
  document.write("A variável n é do tipo " + typeof n + "<br />");
  n = String(n);
  document.write("A variável n agora é do tipo " + typeof n + "<br />");
</script>

Convertendo números para strings em javaScript

Podemos também usar o método toString() do objeto Number para realizar essa conversão:

n = n.toString();

Convertendo valores lógicos para strings

O método global String() também pode converter um valor lógico (booleano) para string:

<script>
b = true;
document.write("A variável b é do tipo " + typeof b + "<br />");
b = String(b);
document.write("A variável b agora é do tipo " + typeof b + "<br />");
</script>

Convertendo tipo de dados boolean para string em JavaScript

Podemos também usar o método toString() do objeto Boolean:

b = b.toString();

Convertendo uma string em número

Para converter uma string em um número podemos usar o método Number():

<script>
 a = "10";
 b = "23.6";
 document.write("A variável a é do tipo " + typeof a + "<br />");
 document.write("A variável b é do tipo " + typeof b + "<br />");
 a = Number(a);
 b = Number(b);
 document.write("A variável a agora é do tipo " + typeof a + "<br />");
 document.write("A variável b agora é do tipo " + typeof b + "<br />");
</script>

Convertendo tipo string para number em JavaScript

Convertendo string para número inteiro

Podemos converter uma string especificamente para um inteiro usando o método parseInt():

<script>
 a = "10";
 document.write("A variável a é do tipo " + typeof a + "<br />");
 a = parseInt(a);
 document.write("A variável a agora é do tipo " + typeof a + "<br />");
 document.write("Valor de a: " + a +  "<br />");
 b = "12.45";
 document.write("A variável b é do tipo " + typeof b + "<br />");
 document.write("Valor de b: " + b + "<br />");
 b = parseInt(b);
 document.write("A variável b agora é do tipo " + typeof b + "<br />");
 document.write("Valor de a: " + a +  "<br />");
 document.write("Valor de b: " + b);
</script>

Convertendo string para número de ponto flutuante (float)

Podemos converter uma string especificamente para um número de ponto flutuante usando o método parseFloat():

<script>
 a = "10";
 document.write("A variável a é do tipo " + typeof a + "<br />");
 a = parseFloat(a);
 document.write("A variável a agora é do tipo " + typeof a + "<br />");
</script>

Precisão de ponto flutuante

Quando trabalhamos com números de ponto flutuante. podemos controlar a precisão que será retornada (quantidade de casas decimais exibidas) usando o método toFixed(), o qual retorna uma string:

<script>
 a = 10.2;
 document.write("O valor de a é " + a.toFixed(2));
</script>

Precisão de números de ponto flutuante no JavaScript

Os valores são arredondados com o método toFixed() se o número de casas a exibir for menor que o número de casas decimais que o número possui.

Tanto toFixed() quanto toPrecision() (próxima seção) são métodos do objeto Number.

Comprimento de ponto flutuante

Quando trabalhamos com números de ponto flutuante, podemos controlar o comprimento total do número que será retornado usando o método toPrecision(), o qual retorna uma string:

<script>
 a = 10.2;
 document.write("O valor de a é " + a.toPrecision(5));
</script>

Neste exemplo o número 5 significa “exiba cinco dígitos”, incluindo o número em si e suas casas decimais.

Próximo: Operadores Relacionais

Sobre Fábio dos Reis (1223 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.

Escreva um comentário

Seu e-mail não será divulgado


*