Tipos de dados JS

Variáveis JavaScript podem conter diferentes tipos de dados: números, strings, objetos e mais:

Exemplo:


    let length = 16;   // Number
    let lastName = "Johnson";   // String
    let x = {firstName:"John", lastName:"Doe"};   // Object      
    

O conceito de tipos de dados

Na programação, os tipos de dados são um conceito importante.

Para poder operar em variáveis, é importante saber algo sobre o tipo.

Sem tipos de dados, um computador não pode resolver isso com segurança:


    let x = 16 + "Volvo";  
    

Faz algum sentido adicionar "Volvo" a dezesseis? Isso produzirá um erro ou um resultado?

JavaScript tratará o exemplo acima como:


    let x = "16" + "Volvo";  
    

Ao adicionar um número e uma string, o JavaScript tratará o número como uma string.

Exemplo:


    let x = 16 + "Volvo";  
    

Exemplo:


    let x = "Volvo" + 16;  
    

JavaScript avalia expressões da esquerda para a direita. Sequências diferentes podem produzir resultados diferentes:

Exemplo:


    let x = 16 + 4 + "Volvo";  
    

Resultado


     20Volvo 
    

JavaScript:


    let x = "Volvo" + 16 + 4;  
    

Resultado


     Volvo164
    

No primeiro exemplo, JavaScript trata 16 e 4 como números, até atingir "Volvo".

No segundo exemplo, como o primeiro operando é uma string, todos os operandos são tratados como strings.

Tipos de JavaScript são dinâmicos

JavaScript possui tipos dinâmicos. Isso significa que a mesma variável pode ser usada para conter diferentes tipos de dados:

Exemplo:


    let x;   // Now x is indefinido
    x = 5;   // Now x is a Number
    x = "John";   // Now x is a String  
    

JavaScript Strings

Uma string (ou uma string de texto) é uma série de caracteres como "John Doe".

As strings são escritas com aspas. Você pode usar aspas simples ou duplas:

Exemplo:


    let carName1 = "Volvo XC60";   // Using double quotes
    let carName2 = 'Volvo XC60';   // Using single quotes
    

Você pode usar aspas dentro de uma string, desde que não correspondam às aspas em torno da string:

Exemplo:


    let answer1 = "It's alright";   // Single quote inside double quotes
    let answer2 = "He is called 'Johnny'";   // Single quotes inside double quotes
    let answer3 = 'He is called "Johnny"';   // Double quotes inside single quotes
    

Números de JavaScript

JavaScript possui apenas um tipo de número.

Os números podem ser escritos com ou sem decimais:

Exemplo:


    let x1 = 34.00;   // Written with decimals
    let x2 = 34;      // Written without decimals  
    

Números muito grandes ou muito pequenos podem ser escritos com notação científica (exponencial):

Exemplo:


    let y = 123e5;      // 12300000
    let z = 123e-5;     // 0.00123  
    

Booleanos JavaScript

Os booleanos podem ter apenas dois valores: true ou false.

Exemplo:


    let x = 5;
    let y = 5;
    let z = 6;
    (x == y)   // Returns true
    (x == z)   // Returns false  
    

Os booleanos costumam ser usados em testes condicionais.

Arrays JavaScript

As matrizes de JavaScript são escritas com colchetes.

Os itens da matriz são separados por vírgulas.

O código a seguir declara (cria) uma matriz chamada cars, contendo três itens (nomes de carros):

Exemplo:


    const cars = ["Saab", "Volvo", "BMW"];  
    

Os índices de matriz são baseados em zero, o que significa que o primeiro item é [0], o segundo é [1] e assim por diante.

Objetos JavaScript

Os objetos JavaScript são escritos com chaves {}.

As propriedades do objeto são escritas como pares nome: valor, separados por vírgulas.

Exemplo:


    const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};  
    

O objeto (pessoa) no exemplo acima tem 4 propriedades: firstName, lastName, age e eyeColor.

O tipo de operador

Você pode usar o typeof operador JavaScript para encontrar o tipo de uma variável JavaScript.

O typeof operador retorna o tipo de uma variável ou expressão:

Exemplo:


    typeof ""           // Returns "string"
    typeof "John"       // Returns "string"
    typeof "John Doe"   // Returns "string"  
    

Exemplo:


    typeof 0         // Returns "number"
    typeof 314       // Returns "number"
    typeof 3.14      // Returns "number"
    typeof (3)       // Returns "number"
    typeof (3 + 4)   // Returns "number"  
    

Undefined

Em JavaScript, uma variável sem valor tem o valor indefinido. O tipo também é indefinido.

Exemplo:


    let car;    // Value is indefinido, type is indefinido  
    

Qualquer variável pode ser esvaziada, definindo o valor para indefinido. O tipo também será indefinido.

Exemplo:


    car = indefinido;  // Value is indefinido, type is indefinido  
    

Valores Vazios

Um valor vazio não tem nada a ver com indefinido.

Uma string vazia tem um valor e um tipo legais.

Exemplo:


    let car = "";    // The value is "", the typeof is "string"