logo javascript

Aprenda javascript com facilidade do zero

Prof. Ivan Lourenço Gomes

Tipos de dados - numbers

Números (ou numbers) podem ser positivos, negativos, inteiros ou decimais (também chamados de floats).

                    
    var ano_nascimento = 1986;
    var preco = 16.99;  // floats devem ser usadas com ponto, nunca com vírgula.
    var temperatura = -5;
    var numero_grande = 2.2e45; /* números muito grandes podem ser representados em Javascript pela notação exponencial. 
    Neste exemplo, este número significa 2.2 x 1045 */

                    
                

Números são usados para fazer diversos tipos de cálculos. Com eles podemos fazer desde operações aritméticas básicas, comparações e até expressões complexas.

                    
    var num1 = 20;
    var num2 = 3;

    var soma = num1 + num2;
    var subtracao = num1 - num2;
    var divisao = num1 / num2;
    var multiplicacao = num1 * num2;

    var media = (num1 + num2) / 2;

    /* Parênteses podem ser usados para montar expressões. Neste caso eles são necessários para calcular a média de dois números, 
    caso contrário a divisão num2 / 2 seria realizada antes da soma, devido à ordem das operações matemáticas.
    

                    
                

A linguagem Javascript suporta diversas operações aritméticas mais complexas por meio do objeto Math e seus diversos métodos, como nos exemplos abaixo. Não se preocupe agora em entender o conceito de objetos e métodos, pois tudo ficará bem claro em breve quando falarmos dos outros tipos de dados além dos primitivos.

                    
    var potencia = Math.pow(2,4);  /*  Neste caso usamos o método pow do objeto Math, que faz potenciação.
    Este método requer duas informações separadas por vírgula entre parênteses: o número base, e a potência.
    Isso significa que temos 24, que dá 16. */

    var arredonda = Math.round(2.7); // Arredondamento. Resultado: 3

    var arredonda_cima = Math.ceil(4.3) // Arredondamento para cima. Resultado: 5
    
    var arredonda_baixo = Math.floor(4.6) // Arredondamento para baixo. Resultado: 4

    var raiz = Math.sqrt(36) // Raiz quadrada. Resultado: 6

                    
                

Muitas vezes vamos precisar incrementar variáveis numéricas, principalmente quando começarmos a usar loops. Imagine que queiramos somar 5 ao valor de uma variável, temos duas formas de fazer isso:

                    

    var increment = 20;
    increment = increment + 5; // redefinimos o valor dela, para o valor que ela já possuía, mais 5.
    console.log(increment); // O console mostrará 25

    // esta estrutura variável = variável + valor, pode ser simplificada com o operador incremental +=

    increment = 1;
    increment += 5;
    console.log(increment); // O console mostrará 6

    // podemos também usar *=, /= e -= para multiplicação, divisão e subtração

                    
                

Há ainda outra maneira de incrementar variáveis. Temos operadores incrementais que aumentam (++) ou diminuem (--) o valor de uma variável em 1 unidade.

                    

    increment = 10;
    increment++;
    console.log(increment); // O console mostrará 11

    increment = 20;
    increment--;
    console.log(increment); // O console mostrará 19

                    
                

O operador incremental += também funciona bem com strings:

                    
    var nome = "João";
    nome += " ";
    nome += "Gomes";

    console.log(nome); // O console mostrará "João Gomes"
    
                    
                

Como converter o tipo de uma variável?

Às vezes, para nos prevenir de erros em nosso código, temos que fazer conversões de tipos de variáveis. Imagine que tivéssemos aquelas variáveis de ddd e telefone da seguinte maneira:

                    
    var ddd = 21;
    var telefone = 998887655;

    /* Se quisermos montar o telefone completo usando concatenação, podemos ter problemas já que as variáveis são do tipo número. 
    Neste caso devemos convertê-las antes de montar o telefone. 
    Para isso, usamos o método toString, que recebe entre parênteses a valor ou variável que queremos converter.*/

    var ddd_string = ddd.toString();
    var tel_string = telefone.toString();

    var telefone_completo = ddd_string + tel_string;

    console.log(telefone_completo); // retorna '21998887655'

                    
                

Também poderíamos precisar fazer o contrário. É muito comum receber dados de fontes externas em formato string. Imagine que recebamos uma idade em string e queiramos testar se ela é maior que 18. Devemos usar os métodos parseInt (se quisermos número inteiro) ou parseFloat (se quisermos número com decimais) antes de fazer o teste.

                    

    var idade = '17';
    var idade_num = parseInt(idade);
    idade_num++;

    console.log(idade_num); // O console mostrará 18

                    
                

Tenha bastante atenção com as conversões pois nem sempre a falta delas gerará um erro visível, mas pode retornar resultados incorretos.

Índice de Aulas