Formatador e Minificador de JSON (valida e formata)
Cole qualquer JSON para formatar com 2/4/8 espaços de indentação, ou minifique para uma única linha. JSON inválido exibe um erro de parse para que você encontre o problema rapidamente.
{
"hello": "world",
"items": [
1,
2,
3
]
}Como funciona
O que esta ferramenta faz
JSON é um formato estrito — cada aspas, vírgula e colchete precisa estar no lugar certo. Navegadores e APIs retornam mensagens crípticas de 'token inesperado' quando algo está errado, e o problema muitas vezes é invisível a olho nu. Este formatador faz o parse da entrada com o parser JSON nativo do navegador e depois a re-serializa de forma formatada (com indentação) ou minificada (sem espaços em branco).
Se o parse falhar, você recebe o erro diretamente — geralmente com a posição do caractere inválido. A partir daí, você pode localizar rapidamente a vírgula faltando, a aspas não escapada ou a vírgula final.
Formatar vs minificar
Formatar com indentação: o jeito padrão de ler JSON. 2 espaços é convencional no contexto JavaScript; 4 espaços é comum em Python e Java. Escolha o que seu projeto usa.
Minificar: colapsar em uma única linha sem espaços. Útil ao incorporar JSON em URLs, variáveis de ambiente ou em qualquer lugar onde espaços em branco importam. A diferença de tamanho é significativa: um arquivo de configuração típico formatado encolhe 20-40% quando minificado.
Armadilhas comuns do JSON
Vírgulas finais. Permitidas em JavaScript, não em JSON. {a:1, b:2,} faz parse no seu editor de código, mas falha quando enviado pela rede.
Aspas simples. JSON exige aspas duplas tanto para chaves quanto para valores de string. {'a': 1} é JSON inválido. {"a": 1} está correto.
Comentários. JSON não tem comentários. // ou /* */ dentro do JSON quebra o parse. JSONC (usado nas configurações do VS Code) suporta comentários, mas não é JSON padrão.
Números. JSON não suporta NaN ou Infinity. Use null, ou envolva em uma string, dependendo do consumidor downstream.
Perguntas frequentes
›Isso suporta JSONC (JSON com comentários)?
Ainda não. Remova os comentários primeiro ou use uma ferramenta que suporte JSONC.
›Qual é o limite de tamanho?
Navegadores modernos lidam com JSON de vários megabytes, embora a área de texto possa ficar lenta acima de ~1 MB. Para arquivos grandes, use uma ferramenta de desktop.
›Por que meu JSON é inválido?
Com mais frequência: uma vírgula final, aspas simples ou uma aspas não escapada dentro de uma string. O erro do parser aponta para a coluna onde o problema é detectado.
›Posso ordenar as chaves alfabeticamente?
Não nesta versão. Colar em uma ferramenta com suporte a ordenação (como jq com --sort-keys) é o caminho mais limpo; podemos adicionar essa opção depois.
›Funciona com JSON muito aninhado?
Sim. O parser JSON do navegador lida com qualquer profundidade prática.
›Por que a minificação não reduz um arquivo de 1 MB para 1 byte?
A minificação só remove espaços em branco. Os dados reais ainda estão lá. Para redução de tamanho real, use gzip ou um formato binário como MessagePack.
›Os dados são enviados para algum lugar?
Não. Todo o parse e formatação acontece no seu navegador.
›E a validação de JSON Schema?
Esta ferramenta valida apenas a sintaxe. Para validação de schema, use um validador de JSON Schema com seu arquivo de schema.
Ferramentas relacionadas
Última atualização: