Imagem do autor do artigo.

Descubra os principais tipos primitivos do JavaScript.

Eduardo Ribas | 07 de junho de 2022
Banner da matéria.

Introdução

Apesar de parecer algo simples, pode ser difícil para alguns compreender os tipos de dados do JavaScript ao certo, então hoje vamos passar por alguns e tentar explicá-los da melhor maneira possível. Ah, e não se esqueça de compartilhar caso ache o artigo útil! =)

Vamos lá, quais são os tipos?

O JavaScript trabalha com 7 tipos diferentes de dados no ES6 (Ecma Script 6) e um deles se trata do Symbol que, por agora, não será discutido. Veja a seguir uma lista com os tipos de dados e clique sobre um deles para ser redirecionado à sua respectiva documentação

Strings

Strings são um dos tipos mais simples de entender no JavaScript, pois elas são responsáveis por armazenar qualquer tipo de texto. Você pode iniciar um texto por meio de aspas duplas, aspas simples ou pelos sinais de crase (template strings). Logo você entenderá mais a diferença entre as três.

Vamos imaginar o seguinte: você quer escrever uma citação numa string iniciada com aspas duplas, mas ao colocar as benditas aspas, seu código aponta um erro. Isso tem um motivo lógico: se você inicia uma string com aspas duplas, ao colocar a próxima, você estará indicando o final da string, mas isso tem solução.

Você poderia iniciar sua string com aspas simples e fechá-la com aspas simples, podendo assim manusear as aspas duplas dentro do texto livremente. Você também poderia fazer o mesmo com aspas duplas para escrever aspas simples sem problemas no seu texto.

Mas afinal, qual a real utilidade das template strings? A resposta é: facilitar na interpolação entre strings e variáveis. A interpolação consiste em concatenar duas ou mais strings ou variáveis. Se você quiser juntar o texto da variável t1 com o texto de t2, bastaria fazer `${t1} ${t2}`.

Numbers

O tipo number é por si só autoexplicativo; ele é responsável por armazenar todos os tipos de números, desde inteiros a decimais. Em outras linguagens de programação, é comum você ter que definir o tipo do número na sua inicialização, porém no JavaScript, você só passa o número e a engine faz o resto do trabalho.

Também é comum encontrarmos números armazenados em strings, mas para fazer operações aritméticas com eles, é necessário convertê-los para o tipo number. Temos ao nosso dispor métodos como Number('n'), parseInt('n'), parseFloat('n') e até mesmo +n.

O primeiro método listado converte o argumento passado para um número independentemente do argumento ser um número inteiro ou decimal. O segundo método converte somente para um número inteiro e o terceiro, para um decimal. O +n que vimos é um short-hand para Number('n')! Simples, não?

Boolean

Os valores booleanos são aqueles que retornam true e false (verdadeiro e falso) de alguma operação lógica. No JavaScript, temos também falsy and truthy values, que são valores que, respectivamente, retornam false e true. No desenvolvimento de uma aplicação, isso acaba facilitando bastante.

Exemplos de falsy values

Exemplos de truthy values

Objetos

É comum ouvirmos por aí que o JavaScript é uma linguagem baseada em objetos. Explicando de maneira simplória, cada objeto criado possui um prototype que é herdado do Object, um dos tipos citados anteriormente, que contém um conjunto de vários dados e métodos, assuntos que serão tratados num outro dia.

Na declaração de um objeto, você precisa especificar o seu índice e seus respectivos valores, assim como neste trecho de código: const autor = { 'nome': 'Eduardo' }. Podemos perceber que sua inicialização se dá por meio das chaves que envolve todas as informações especificadas.

Podemos obter valores de um objeto de duas maneiras: autor.nome, que é a notação de ponto (dot notation) e autor['nome'], que se trata da notação de colchetes (bracket notation). Pela notação de colchetes, você tem liberdade para passar variáveis como valores, diferentemente da notação de ponto.

Arrays

Os arrays nada mais são que objetos, porém seus índices não são definidos manualmente. Seus índices sempre começarão automaticamente a partir do 0. No array const salada = [ 'manga', 'banana', 'maçã' ], manga se encontra no índice 0, na primeira posição, enquanto maçã se localiza no índice 2, na terceira posição.

Quando não é necessário definir um nome para o índice, os arrays são os mais apropriados. Diferentemente dos objetos padrões, os arrays se inicializam com colchetes e seus valores só podem ser acessados por meio da notação de colchetes (bracket notation), pois seus índices são números e na notação de pontos, o primeiro caractere precisa ser uma letra.

Null e undefined

Chegamos nos últimos tipos deste artigo! Na prática, esses valores podem se parecer, mas no geral, representam coisas diferentes que, a princípio, pode ser meio complicado de se entender.

Podemos concluir que undefined representa uma variável ou campo que não teve o seu valor atribuído previamente, sendo na maior parte das vezes, erro do programador, enquanto null representa a ausência intencional de um valor, normalmente induzido pelo programador.

Imagem do autor do artigo

Eduardo Ribas

Estudante & Desenvolvedor Web.