O que significa JSON e um primeiro exemplo
JSON significa JavaScript Object Notation (Notação de Objetos JavaScript). Ele foi popularizado por Douglas Crockford no início dos anos 2000, tem a sintaxe emprestada do JavaScript e é padronizado pela RFC 8259 e pela ECMA-404. Apesar do nome, o JSON não depende de nenhuma linguagem de programação: praticamente todas as linguagens conseguem ler e escrever JSON.
Um pequeno documento JSON que descreve uma pessoa:
{"name": "Ada Lovelace", "born": 1815, "languages": ["English", "French"], "mathematician": true, "spouse": null}
Tipos de dados do JSON
| Tipo | Exemplo | Observações |
|---|---|---|
| String | "Hello" | texto entre aspas duplas, com escapes como \n |
| Número | 42, -3.14, 6.02e23 | sem NaN, Infinity, hexadecimal ou zeros à esquerda |
| Booleano | true, false | sempre em minúsculas |
| Null | null | um valor vazio ou desconhecido |
| Objeto | {"key": "value"} | pares nome/valor; os nomes são strings |
| Array | [1, 2, 3] | uma lista ordenada de valores de qualquer tipo |
O JSON não tem um tipo de data: datas costumam ser escritas como strings ISO 8601, como "2026-05-01T10:00:00Z".
Formato JSON: as regras de sintaxe
- Os dados são escritos como pares nome/valor:
"name": "Ada". - Nomes (chaves) e strings sempre usam aspas duplas – nunca aspas simples.
- Os itens são separados por vírgulas, sem vírgula depois do último item.
- Chaves
{ }delimitam objetos, colchetes[ ]delimitam arrays. - Comentários não são permitidos.
- Espaços e quebras de linha entre os itens são ignorados, então os mesmos dados podem ser minificados ou formatados.
- Um texto JSON contém um único valor de nível superior e é codificado em UTF-8.
O que é um arquivo JSON?
Um arquivo JSON é um arquivo de texto simples com a extensão .json que contém um documento JSON. Seu tipo de mídia é application/json, e ele deve ser salvo em UTF-8. Arquivos JSON típicos são exportações de dados de apps e sites (por exemplo, o Google Takeout ou os downloads de dados das redes sociais), arquivos de configuração como package.json, respostas de API salvas em disco e conjuntos de dados para análise. Por ser texto simples, um arquivo JSON é seguro de abrir – ele não consegue executar código.
Como abrir um arquivo JSON
| Onde | Como |
|---|---|
| Windows | Clique com o botão direito no arquivo → Abrir com → Bloco de Notas, ou use um editor de código como o VS Code. Arrastar o arquivo para uma janela do navegador também o exibe. |
| Mac | Abra-o com o TextEdit ou com um editor de código, ou arraste-o para uma janela do navegador. |
| iPhone e Android | Abra-o pelo app Arquivos em um visualizador de texto ou carregue-o em um visualizador JSON online – o nosso funciona no celular e o arquivo fica no seu dispositivo. |
| Navegador | O Firefox tem um visualizador JSON embutido; em qualquer navegador, um visualizador JSON online mostra os dados como uma árvore recolhível. |
| Excel | Use Dados → Obter Dados → De Arquivo → Do JSON no Windows ou converta o arquivo antes com a ferramenta JSON para CSV. |
Diferença entre JSON e XML
| JSON | XML | |
|---|---|---|
| Sintaxe | chaves, colchetes, pares nome/valor | tags de abertura e de fechamento |
| Tipos de dados | string, número, booleano, null, objeto, array | apenas texto, a menos que um schema defina os tipos |
| Tamanho | compacto | maior por causa das tags de fechamento |
| Comentários | não | sim |
| Atributos, namespaces | não | sim |
| Uso típico | APIs web, configuração, bancos de dados NoSQL | documentos, arquivos do Office, SOAP e sistemas corporativos |
JSON em APIs e aplicações
A maioria das APIs web envia e recebe JSON. O cliente envia uma requisição com o cabeçalho Content-Type: application/json, o servidor responde com JSON e o programa transforma a resposta em objetos nativos com JSON.parse no JavaScript, json.loads no Python ou json_decode no PHP. O JSON também está por trás de arquivos de configuração como package.json e tsconfig.json, de bancos de dados de documentos como o MongoDB e da saída estruturada de modelos de IA.
Erros comuns em JSON
- Uma vírgula sobrando depois do último item:
[1, 2,] - Aspas simples ou chaves sem aspas:
{'a': 1},{a: 1} - Comentários como
// note - Uma vírgula ou um colchete faltando entre os itens
- Valores do JavaScript ou do Python como
undefined,NaNouTrue
Cole seus dados no validador JSON para ver a linha e a coluna exatas do problema ou deixe que o Corrigir resolva automaticamente.
JSON5, JSONC e JSON Lines
- JSON5 – um superconjunto mais flexível para arquivos escritos à mão: comentários, vírgulas finais, aspas simples, chaves sem aspas e números hexadecimais. Parsers de JSON padrão não conseguem lê-lo.
- JSONC – JSON com comentários, usado nas configurações do VS Code e no
tsconfig.json. - JSON Lines / NDJSON (
.jsonl) – um valor JSON por linha, ideal para logs e para transmitir grandes conjuntos de dados. - GeoJSON – JSON para dados geográficos, definido na RFC 7946.
Perguntas frequentes
JSON é uma linguagem de programação?
Não. JSON é um formato de dados: ele descreve dados, mas não pode conter lógica, funções nem comentários.
JSON é a mesma coisa que um objeto JavaScript?
Não. JSON é um texto parecido com um literal de objeto JavaScript, mas mais rigoroso: chaves e strings precisam de aspas duplas, e funções, undefined e comentários não são permitidos. O JSON.parse transforma o texto em um objeto de verdade.
Como criar um arquivo JSON?
Escreva os dados em qualquer editor de texto seguindo as regras acima e salve o arquivo em UTF-8 com a extensão .json. Verifique-o com um validador JSON antes de usar.
Última atualização: