Nesta página

JSON estrito não aceita comentários nem vírgulas finais. JSONC permite comentários; a aceitação de vírgulas finais depende do programa que lê o documento. O modo JSONC para JSON do 4all.tools aceita ambas as extensões, remove essas partes e valida a saída. Confira qual formato o destino exige: se precisar de JSON, converta o documento e guarde o original comentado.

Uma configuração aceita pelo seu editor pode falhar ao ser enviada a uma API que exige JSON estrito. Trocar a extensão de .jsonc para .json não transforma o conteúdo: os comentários e as vírgulas continuam lá.

O que diferencia JSON, JSONC e JSON5

Sintaxe JSON estrito JSONC JSON5
Comentários // e /* ... */ Não Sim Sim
Vírgula após o último campo ou elemento Não Depende do consumidor Sim
Strings com aspas simples Não Não Sim
Chaves sem aspas Não Não Sim, para identificadores permitidos

A gramática do RFC 8259 define JSON estrito. O rascunho da especificação JSONC torna opcional o suporte a vírgulas finais. Nesta ferramenta, o modo JSONC aceita essas vírgulas em objetos e arrays. Isso não garante que outro consumidor de JSONC as aceite.

Converta uma configuração comentada, passo a passo

Guarde uma cópia do original. Esta entrada é válida para o modo JSONC do 4all.tools:

{
  // URL usada no ambiente de teste
  "endpoint": "https://api.example.test/v1",
  "nota": "O texto /* demo */ deve ser preservado",
  "tentativas": 3,
  "regioes": ["mx", "es",],
}
  1. Abra o JSON Repair e cole a amostra em Texto de entrada.
  2. Escolha JSONC para JSON.
  3. Selecione Converter para executar a operação. Colar ou mudar o modo não inicia a conversão.
  4. Revise a saída proposta, as alterações e os avisos. Compare os valores com o original.
  5. Se o resultado for válido e corresponder aos dados de que você precisa, selecione Copiar saída e use essa versão no destino.

Resultado esperado, formatado para facilitar a leitura:

{
  "endpoint": "https://api.example.test/v1",
  "nota": "O texto /* demo */ deve ser preservado",
  "tentativas": 3,
  "regioes": ["mx", "es"]
}

O motor atual produz esses dados e valida o candidato como JSON estrito. A disposição acima é editorial: a conversão real substitui comentários e vírgulas finais por espaços e preserva as quebras de linha. Pode sobrar uma linha em branco no lugar do comentário e espaços antes dos delimitadores de fechamento.

O que é removido e o que é preservado

Na amostra, três trechos são removidos:

  • O comentário de linha que começa com // URL.
  • A vírgula depois de "es", antes de ].
  • A vírgula depois do array, antes de }.

O // de https://api.example.test/v1 e o texto /* demo */ dentro da string são dados e são preservados. O número 3, seu tipo numérico e a ordem do array também permanecem: primeiro "mx", depois "es". Evite uma substituição global com expressões regulares para apagar comentários: ela pode remover partes de uma URL ou texto literal.

A perda dos comentários é intencional. Se contiverem instruções para manter a configuração, guarde o original JSONC e gere uma cópia JSON para o consumidor que a exige.

Se a conversão continuar falhando

Leia o diagnóstico antes de trocar de modo. Uma vírgula ausente, uma string sem fechamento ou um comentário de bloco incompleto continuam sendo erros. Se faltarem separadores ou delimitadores de fechamento, consulte como localizar e corrigir erros de sintaxe JSON e tente converter novamente após a correção necessária.

Esta entrada está fora do modo JSONC:

{ ambiente: 'teste' }

Ela tem uma chave sem aspas e uma string com aspas simples. Seu equivalente em JSON estrito é:

{"ambiente":"teste"}

Essas construções existem em JSON5; remover comentários não as converte. Reparar JSON pode tentar corrigir alguns casos com heurísticas, mas não é um conversor completo de JSON5. Ative esse modo apenas se precisar da reparação e puder revisar cada inferência: uma sintaxe válida não prova que o dado pretendido foi recuperado.

Se estiver trabalhando com uma resposta de IA, veja como revisar JSON gerado por IA antes de usar, com exemplos de envoltórios e valores truncados.

A ferramenta também aplica limites de tamanho e complexidade e rejeita chaves duplicadas. São políticas do produto, não uma definição universal de JSONC. Se aparecer um aviso de limite, reduza a entrada; se houver chaves duplicadas, decida qual valor deve ser mantido. A página do JSON Repair detalha os limites atuais.

Compartilhar este guia

Link do artigo