Lição 3
Tipos de dados JSON
Strings, números, booleanos, null e o que o JSON deliberadamente exclui.
JSON suporta exatamente seis tipos de valor. Não há datas, funções nem undefined — só o que pode ser representado literalmente em texto.
1. String
Texto entre aspas duplas. Sequências de escape incluem \", \\, \n, \t e \uXXXX para Unicode.
"message": "Hello, \"world\"!"
2. Number
Números JSON são decimais; sem NaN ou Infinity. Sinal + no início não é obrigatório; frações e expoentes são permitidos.
"count": 42,
"ratio": 0.75,
"large": 1.2e6
3. Boolean
Literais true ou false (minúsculas, sem aspas).
"enabled": true
4. null
O literal null significa “sem valor” ou “vazio” em muitas APIs — não a string "null".
"middleName": null
5. Object
Coleção não ordenada de pares chave–valor (a ordem pode ser preservada pelo parser, mas não deve ser usada para semântica).
6. Array
Lista ordenada de valores; após o parse, índices começam em zero nas linguagens hospedeiras.
O que JSON não inclui
| Não está em JSON | Contorno comum |
|---|---|
undefined | Omitir a chave ou usar null |
Date | String ISO 8601: "2026-05-22T10:00:00Z" |
Map, Set | Arrays ou objetos |
| Comentários | Documentação externa ou campo "_comment" (não padrão) |
| Strings com aspas simples | Use aspas duplas |
Entender esses limites evita confusão ao mapear JSON para modelos tipados na aplicação.