tipo simples
1. Tipo booleano (Boolean): significa verdadeiro ou falso.
2. Tipo numérico (Number): representa um valor numérico, incluindo inteiros e números de ponto flutuante (decimais).
3. Tipo String (String): Indica um ou mais caracteres, entre aspas duplas " " ou simples ' '.
4. Tipo vazio (Null): representa um valor nulo ou um objeto que não existe.
5. Tipo indefinido (Undefined): Indica um valor que não está atribuído ou não existe.
6. Tipo de símbolo: representa um valor único e imutável para as propriedades do objeto.
7. Tipo inteiro grande (BigInt): Número inteiro representando precisão arbitrária.
tipo de referência
1. Tipo de objeto (Object): representa um container que armazena vários valores, podendo conter valores e métodos de outros tipos de dados.
***Tipo de função (Funaction): Uma função é um tipo de objeto especial que pode ser chamado para executar e retornar um resultado, e também pode ser passado como parâmetro para outras funções ou objetos.
***Tipo de matriz (Array): Uma matriz é um tipo de objeto especial usado para armazenar um conjunto ordenado de dados. Eles podem conter valores de vários tipos de dados, como strings, números, objetos, etc.
Quais são as diferenças?
- Diferentes métodos de armazenamento: Diferentes tipos de dados são armazenados de maneiras diferentes dentro do computador. Por exemplo, o tipo booleano é verdadeiro/falso, que é armazenado em um número binário de um bit, enquanto o tipo numérico deve ser armazenado em um número de vários bits número binário.
- Mutabilidade é diferente: valores de tipos de dados primitivos são imutáveis porque são valores primitivos, enquanto valores de tipos de objeto são mutáveis porque são valores de referência, armazenando endereços de memória.
- Diferentes operações: Ao usar diferentes tipos de dados, vários operadores e funções na linguagem podem se comportar de maneira diferente. Por exemplo, tipos booleanos não podem realizar operações aritméticas, enquanto tipos numéricos podem realizar operações como adição, subtração, multiplicação e divisão.
- Diferenças no espaço de armazenamento: tipos de dados diferentes ocupam espaços de memória diferentes. Por exemplo, tipos numéricos ocupam mais espaço que tipos booleanos.