Formatador JSON online | Valide e embeleze seu JSON | Awesome Toolkit

Formatador & Validador JSON

Formate, valide e minifique seu JSON instantaneamente. Mensagens de erro em linha para localizar problemas.

Por Marshkalk

Saída

Como usar o formatador JSON

  1. Cole seu JSON bruto ou minificado no campo de entrada à esquerda.
  2. Clique em Formatar para embelezar com indentação de 2 espaços, ou Minificar para comprimir em uma linha.
  3. Clique em Validar para verificar a sintaxe sem modificar o JSON.
  4. Clique em Copiar para copiar a saída para a área de transferência.

Formatar, minificar ou validar: qual a diferença?

Formatar (também chamado de beautification ou pretty-printing) adiciona indentação e quebras de linha consistentes. Os dados não mudam, apenas o espaço em branco. O resultado é um JSON legível, fácil de navegar e depurar.

Minificar remove todos os espaços desnecessários: espaços, tabulações e quebras de linha. Um JSON minificado é menor e mais rápido de transmitir. As respostas de API costumam ser minificadas por esse motivo.

Validar verifica se o JSON é sintaticamente correto conforme a especificação RFC 8259. Uma mensagem de erro aponta a posição exata do problema para que você possa corrigi-lo rapidamente.

Erros JSON mais comuns

  • Vírgula final: {"a":1,} não é JSON válido. Remova a última vírgula.
  • Chaves sem aspas: {a:1} não é JSON. As chaves devem estar entre aspas duplas: {"a":1}.
  • Aspas simples: JSON exige aspas duplas para strings. Aspas simples não são permitidas.
  • Comentários: JSON não tem sintaxe de comentários. Remova qualquer // ou /* */ antes de validar.
  • NaN / Infinity: Esses valores JavaScript não são JSON válido. Use null no lugar.

Quando usar cada ação?

  • Use Formatar ao ler uma resposta de API, revisar um arquivo de configuração ou depurar dados.
  • Use Minificar antes de incorporar JSON em código-fonte ou enviá-lo pela rede.
  • Use Validar quando uma API rejeitar sua solicitação ou um analisador lançar um erro inesperado.

Privacidade

Todo o processamento ocorre no seu navegador. Seu JSON nunca sai do seu dispositivo, nada é enviado, armazenado ou registrado.

JSON nao é JavaScript, tipos que nao existem em JSON

JSON é um subconjunto estrito da sintaxe JavaScript, mas nao suporta vários tipos de JavaScript que os programadores tentam incluir habitualmente:

  • Datas: JSON nao tem tipo data. A convenção sao strings ISO 8601 ("2024-06-05T12:00:00Z"), mas esse formato nao faz parte do padrão JSON. Diferentes APIs e bibliotecas analisam datas de forma diferente.
  • Infinity e NaN: Estes valores numéricos de JavaScript nao sao JSON válido. Substitua-os por null antes de serializar.
  • undefined: Chaves de objeto com valor undefined sao omitidas silenciosamente pelo JSON.stringify, fonte frequente de bugs de campos ausentes.
  • Comentários: O JSON padrão (RFC 8259) nao permite comentários. Para comentários, use JSON5 ou JSONC (usado pelas definicoes do VS Code). Nenhum é JSON válido.
  • Vírgulas finais: Permitidas em JavaScript, inválidas em JSON. Algumas APIs rejeitam o payload sem notificacao.

Precisao de números grandes

Os números JSON nao sao tipados, mas a maioria dos parsers usa floats IEEE 754 de 64 bits. Inteiros maiores que 253 - 1 (9.007.199.254.740.991) perdem precisao ao serem analisados com JSON.parse em JavaScript. Bases de dados frequentemente retornam IDs como inteiros grandes, causando corrupção silenciosa de dados no navegador. A solucao é transmiti-los como strings e analisá-los com uma biblioteca compatível com BigInt.