Pular para o conteudo principal
CuteJSON
↑↓ Navegar Enter Selecionar Esc Fechar

Folha de referencia JSON: sintaxe, tipos de dados e operacoes em uma pagina

Publicado 3 min de leitura Por Akash Kinkar Pandey

Tudo o que esta nesta pagina cabe intencionalmente em uma tela: a sintaxe de JSON e pequena o suficiente para que uma referencia completa nao precise ser longa. Leia aqui, ou baixe a mesma referencia como imagem para manter offline ou imprimir.

Folha de referencia JSON cobrindo estrutura, regras de sintaxe, tipos de dados, operacoes comuns, exemplos e praticas recomendadas

1. Estrutura

JSON e escrito como pares chave-valor dentro de um objeto ({ }) ou como uma lista ordenada dentro de um array ([ ]). As chaves sao sempre strings. Os valores podem ser uma string, numero, booleano, null, array ou outro objeto, aninhados tantos níveis quanto os dados realmente precisam.

{
  "name": "Ada",
  "age": 36,
  "active": true,
  "skills": ["json", "css"],
  "address": { "city": "London" },
  "nickname": null
}

2. Regras de sintaxe

  • Chaves e valores do tipo string usam aspas duplas. Aspas simples nao sao JSON valido.
  • Dois-pontos separam cada chave do seu valor.
  • Uma virgula separa os pares e os itens do array, sem nenhuma apos o ultimo.
  • Arrays sao listas ordenadas, valores separados por virgulas.
  • Nenhum comentario. JSON padrao nao tem sintaxe de comentarios, nem // nem #.

3. Tipos de dados

Tipo Exemplo Observacoes
String "hello" Somente aspas duplas
Numero 42, -3.14 Sem hexadecimal, sem NaN, sem zero a esquerda
Booleano true, false Em minusculas, sem aspas
Null null Em minusculas, sem aspas
Array ["a", 1, true] Ordenado, tipos mistos permitidos
Objeto {"key": "value"} As chaves sao sempre strings

Tipos de dados JSON explicados analisa cada um de estes com os casos extremos que confundem analisadores.

4. Operacoes comuns (JavaScript)

JSON.parse(text)              // string -> valor, lancar erro em JSON invalido
JSON.stringify(value)         // valor -> string
JSON.stringify(value, null, 2) // impressao formatada, recuo de 2 espacos
value.key                     // ler uma chave apos analisar
value.nested.key              // ler uma chave aninhada

5. Exemplos

Array de objetos

[
  { "id": 1, "name": "Ada" },
  { "id": 2, "name": "Linus" }
]

Objeto aninhado

{ "user": { "id": 1, "verified": true } }

Tipos mistos

{ "tags": ["a", "b"], "score": null, "live": false }

6. Praticas recomendadas

  • Use nomes de chave significativos e consistentes.
  • Mantenha as estruturas o mais planas que os dados permitirem razoavelmente.
  • Valide o JSON antes de analisar uma entrada que voce nao gerou.
  • Use arrays para listas, nao objetos com chaves que parecem numericas.
  • Coloque aspas em inteiros grandes como strings se a precisao exata importar; um ID de 64 bits pode ser arredondado em um JSON.parse normal (veja Tipos de dados JSON).
  • Trate erros de analise explicitamente. Nunca assuma que uma entrada e JSON valido apenas porque normalmente e.

Proximos passos

Voltar a todos os posts