Padrão RFC 8259 & ECMA-404

Tudo sobre o Padrão JSON (RFC 8259) e Otimização de APIs

Aprenda a estruturar dados legíveis, evitar armadilhas comuns de sintaxe e reduzir consumo de banda com minificação.

Erros Mais Frequentes em Arquivos JSON

  • Vírgula no último item (Trailing Comma): Ao contrário do JavaScript moderno, a especificação oficial do JSON proíbe terminadores com vírgula (ex: [1, 2, 3,] é inválido).
  • Aspas Simples: Em JSON válido, todas as chaves e textos devem obrigatoriamente usar aspas duplas.
  • Valores Não Suportados: Funções, undefined, NaN e Infinity não são aceitos no padrão JSON.

Formatação vs Minificação em Produção

Durante o desenvolvimento, a formatação com recuo de 2 ou 4 espaços é essencial para legibilidade humana e depuração de APIs.

No entanto, em ambientes de produção, minificar o payload JSON remove todos os espaços em branco e quebras de linha inúteis, reduzindo o tamanho do arquivo em até 30% a 50%, economizando banda de rede e acelerando respostas HTTP.

Tipos de Dados Primitivos Aceitos na Especificação RFC 8259

TipoSintaxe VálidaExemploObservações Críticas
StringSempre entre aspas duplas"nome": "DevTools"Caracteres especiais devem ser escapados (\", \\, \n, \t).
NumberPonto flutuante IEEE 75442 ou -3.1415Não suporta representações hexadecimais (0xFF) nem NaN.
BooleanLiterais em minúsculotrue ou falsePalavras como True ou FALSE em maiúsculo são sintaxes inválidas.
NullLiteral null"endereco": nullRepresenta ausência intencional de valor. Não confundir com undefined.
ObjectPares chave/valor entre chaves{"status": 200}Chaves obrigatoriamente strings entre aspas duplas.
ArrayLista indexada entre colchetes[1, 2, "tres"]Pode conter coleções heterogêneas de quaisquer tipos válidos.

Perguntas Frequentes sobre JSON (FAQ)

Por que o JSON não permite comentários nativos?

Douglas Crockford, o criador da especificação JSON, removeu intencionalmente os comentários em 2000 para impedir que desenvolvedores inserissem diretivas de pré-processamento que quebrassem a interoperabilidade universal entre diferentes linguagens de programação.

Existe risco de segurança em usar eval() para ler JSON?

Sim, altíssimo risco. Nunca utilize eval() para fazer parse de JSON recebido de fontes externas, pois isso permite execução remota de código malicioso (RCE / XSS). Utilize sempre o método nativo e seguro JSON.parse().