Formatador de JSON

Formata, valida e minifica JSON.

O que é JSON?

JSON (JavaScript Object Notation) é o formato de troca de dados mais usado da internet moderna. Criado por Douglas Crockford no início dos anos 2000, é a linguagem padrão de comunicação entre backend e frontend, entre APIs de terceiros e entre bancos de dados NoSQL e aplicações que os consomem.

Sua sintaxe é simples e legível: objetos são delimitados por chaves { }, arrays por colchetes [ ], strings ficam entre aspas duplas, e valores podem ser strings, números, booleanos, null, objetos aninhados ou arrays. É essa simplicidade que fez o JSON dominar sobre alternativas mais verbosas como XML.

Por que formatar JSON?

JSON pode ser escrito em uma única linha, comprimido (minified) para economizar bandwidth. Isso é ótimo para tráfego de rede, mas péssimo para leitura humana. Um JSON minificado com centenas ou milhares de propriedades vira uma linha ilegível impossível de analisar.

Formatar JSON (também chamado de "beautify" ou "pretty print") adiciona quebras de linha, indentação consistente e alinhamento. O mesmo dado passa a ser navegável visualmente, permitindo identificar rapidamente estruturas aninhadas, encontrar propriedades específicas, e detectar erros de sintaxe.

Casos de uso do formatador JSON

Debug de APIs: ao consumir APIs REST, você recebe respostas em JSON que precisa analisar. Formatação transforma respostas ilegíveis em documentos navegáveis.

Configuração de aplicações: muitos softwares usam JSON como formato de configuração (package.json em Node.js, tsconfig.json em TypeScript, arquivos de settings). Editar sem formatar é convite ao erro.

Documentação de contratos: ao escrever documentação de API, exemplos formatados de request e response são muito mais claros para outros desenvolvedores.

Comparação entre versões: comparar dois JSONs para ver mudanças é impossível quando ambos estão em uma linha. Formatados, ferramentas de diff mostram claramente o que mudou.

Migração de dados: ao mover dados entre sistemas, verificar visualmente a estrutura antes de importar evita muita dor de cabeça.

Validação de sintaxe JSON

Nossa ferramenta faz mais que formatar — ela também valida a sintaxe do JSON. Se houver erro (chave sem valor, vírgula extra, aspas inconsistentes), o formatador aponta a linha e coluna do problema.

Erros comuns detectados:

Aspas simples ao invés de duplas: JSON exige aspas duplas em todas as strings. 'nome' é inválido; "nome" é correto.

Vírgula sobrando: {"a":1, "b":2,} tem vírgula extra após o 2 que invalida o JSON.

Comentários: JSON puro não aceita comentários. Se você precisa comentar configuração, use JSONC (JSON with Comments) ou remova comentários antes de parsear.

Chaves não quotadas: {nome: "João"} não é JSON válido. Deve ser {"nome": "João"}.

Números com aspas: {"idade": "30"} é diferente de {"idade": 30}. O primeiro é string, o segundo é número. Depende do contexto qual é correto, mas frequentemente é fonte de bugs.

JSON versus outros formatos

JSON versus XML: XML foi o padrão anterior, mais verboso, com tags de abertura e fechamento. JSON é 30-40% mais compacto para mesma informação, mais legível e mais rápido de parsear. XML ainda é usado em contextos legados (SOAP, SVG, RSS) e onde metadados extensivos são necessários.

JSON versus YAML: YAML é mais legível para humanos, especialmente em configurações longas, mas é mais complexo de parsear e mais sensível a formatação (indentação incorreta quebra o arquivo). Muito usado em DevOps (Docker Compose, Kubernetes, GitHub Actions).

JSON versus TOML: TOML é focado em configurações, mais explícito que YAML. Usado principalmente em Rust (Cargo.toml).

Como usar nossa ferramenta

Cole seu JSON no campo de entrada. Nossa ferramenta detecta automaticamente se está minificado ou desformatado e aplica indentação de 2 espaços (padrão da comunidade JavaScript).

Se houver erros de sintaxe, uma mensagem clara indica onde está o problema. Após correção, formate novamente para verificar.

Depois de formatado, você pode copiar o resultado ou usar diretamente. O JSON formatado pode ser convertido de volta para minificado com um clique — útil para embutir em requisições HTTP ou variáveis de código.

Boas práticas com JSON em projetos

Use chaves consistentes: escolha camelCase (padrão JavaScript) ou snake_case (padrão Python/Ruby) e mantenha em todo o projeto.

Evite estruturas muito profundas: objetos aninhados em 5+ níveis são difíceis de manter. Prefira estrutura mais plana quando possível.

Valide schemas: use ferramentas como JSON Schema para documentar e validar a estrutura esperada de JSONs em APIs.

Cuidado com números grandes: JavaScript tem precisão limitada em números (safe integer até 2^53). IDs numéricos muito grandes devem ser strings.

Não misture tipos em arrays: arrays de tipos misturados (números, strings e objetos juntos) são difíceis de processar. Prefira arrays homogêneos.

Segurança ao trabalhar com JSON

Nunca use `eval()` para parsear JSON em JavaScript — isso executa código arbitrário e é vulnerabilidade grave. Use `JSON.parse()`.

Ao aceitar JSON de fontes externas, valide o tamanho antes de parsear. JSONs muito grandes podem causar denial of service.

Se você trabalha com dados sensíveis, note que nossa ferramenta processa tudo no navegador — o JSON que você cola não é enviado para servidores. Mas em ferramentas de terceiros, sempre verifique políticas de privacidade antes de colar dados sensíveis.

Continue por aqui

Perguntas frequentes

Meu JSON é válido mas o formatador acusa erro. Por quê?

As causas mais comuns são vírgula sobrando depois do último item de um objeto ou array, aspas simples no lugar de duplas, comentários (que o JSON não aceita) e chaves sem aspas. O JSON é bem mais estrito que o objeto literal de JavaScript.

Qual a diferença entre formatar e minificar?

Formatar adiciona indentação e quebras de linha para leitura humana. Minificar remove todo espaço desnecessário para reduzir o tamanho na transferência. O conteúdo é idêntico nos dois casos — muda apenas o espaçamento, que o JSON ignora.

O JSON aceita comentários?

Não. A especificação não prevê comentários, e qualquer // ou /* */ invalida o documento. Para configurações que precisam de comentários, use JSONC, YAML ou TOML, ou inclua um campo chamado "_comentario" no próprio objeto.

Meus dados são enviados para o servidor?

Não. A formatação acontece inteiramente no seu navegador — o conteúdo colado não sai do seu dispositivo. Ainda assim, evite colar dados sensíveis de produção em qualquer ferramenta online.

Ferramentas relacionadas