Como formatar JSON
- Cole o seu JSON na caixa de entrada. Pode ser uma linha só, copiada da resposta de uma API, ou um arquivo inteiro.
- Escolha Formatar para indentar (2 espaços, 4 espaços ou tabulações) ou Minificar para remover todo o espaço em branco. O resultado é atualizado enquanto você digita.
- Ative Ordenar chaves de A a Z para colocar as chaves de cada objeto em ordem alfabética, o que facilita comparar dois documentos.
- Se o JSON for inválido, uma mensagem em vermelho mostra o que está errado, com a linha e a coluna em que o analisador parou.
- Clique em Copiar para levar o resultado para a área de transferência.
Tudo acontece no seu navegador, com as funções nativas JSON.parse e JSON.stringify. Nada é enviado, então você pode colar com tranquilidade arquivos de configuração ou respostas de API que contenham dados privados.
O que é JSON?
JSON (JavaScript Object Notation) é um formato de texto leve para guardar e trocar dados. Ele é usado por quase todas as APIs da web, por arquivos de configuração como o package.json e por vários bancos de dados. Um documento JSON é montado com seis tipos de valor:
- Objetos — pares chave/valor entre chaves, como
{"id": 7}. As chaves precisam ser strings entre aspas duplas. - Arrays — listas ordenadas entre colchetes, como
[1, 2, 3]. - Strings — texto entre aspas duplas. Caracteres especiais levam uma barra invertida, como
\npara uma quebra de linha. - Números — inteiros ou decimais como
42ou-3.14. O separador decimal é sempre o ponto, nunca a vírgula, e não há zeros à esquerda nemNaN. - Booleanos —
trueoufalse, em minúsculas. - null — um valor vazio.
Formatar ou minificar: um exemplo
O exemplo que aparece na caixa acima está minificado. São 68 caracteres em uma única linha:
{"name":"ToolHub","tools":["json","words"],"free":true,"users":1200}
Depois de Formatar com 2 espaços, cada chave fica em uma linha própria e os valores aninhados ganham recuo, então dá para entender a estrutura de relance. O JSON formatado é mais fácil de ler, de revisar em um pull request e de depurar. O minificado é menor: em arquivos grandes, tirar o espaço em branco costuma reduzir o tamanho em 10 a 20 %, o que pesa quando os dados trafegam muitas vezes pela rede. Os dados em si são idênticos nos dois casos.
Erros comuns de JSON e como corrigir
- Vírgula sobrando no final —
[1, 2,]é válido em JavaScript, mas não em JSON. Apague a última vírgula. - Aspas simples —
{'name': 'Ana'}falha. Strings e chaves precisam de aspas duplas. - Chaves sem aspas —
{name: 1}deve ser escrito como{"name": 1}. - Comentários — o JSON padrão não aceita
//nem/* */. Remova-os ou use um formato como o JSONC, se a sua ferramenta der suporte. - Caracteres sem escape — uma quebra de linha ou tabulação direta dentro de uma string não é permitida; use
\ne\t. - Literais errados —
True,Noneeundefinedvêm de outras linguagens. O JSON só aceitatrue,falseenull. - Vírgula como separador decimal —
{"preco": 49,90}é inválido. Escreva{"preco": 49.90}, mesmo que no dia a dia você use a vírgula.
Dica: quando o erro apontar para uma linha, olhe também o caractere logo antes dela. Muitas vezes a causa real é uma vírgula ou uma aspa que faltou na linha anterior, porque o analisador só percebe o problema um símbolo depois.
Perguntas frequentes
Meu JSON é enviado para algum servidor?
Não. A formatação e a validação acontecem inteiramente no seu navegador, com o analisador de JSON que já vem no JavaScript.
O que significa minificar JSON?
Minificar remove os espaços e as quebras de linha desnecessários, deixando o JSON menor para trafegar pela rede. Os dados continuam os mesmos.
Por que o meu JSON é inválido?
As causas mais comuns são vírgula sobrando no final, aspas simples em vez de duplas, chaves sem aspas e comentários. A mensagem de erro mostra a linha e a coluna do problema.