Minificar JSON
Esta ferramenta remove todo espaço em branco redundante, indentação, quebras de linha e comentários JSONC de cargas JSON, preservando rigorosamente a integridade da sintaxe RFC 8259. Ele informa a contagem de bytes antes e depois, a porcentagem de redução de tamanho, o tamanho real na rede com gzip medido pelo seu navegador e uma análise de frequência para encurtar chaves, otimizando a transferência de cargas por HTTP.
Como funciona o Minificar JSON?
Em aplicações web de produção e microsserviços, cargas JSON frequentemente contêm de 20% a 55% de espaço em branco redundante, introduzido por pretty-printers, formatadores de código ou pela indentação de quem escreveu. Esse peso morto infla diretamente a latência de trânsito na rede, consome banda de saída e torna a desserialização via JSON.parse mais lenta.
O motor de minificação do ToolsByUs realiza tokenização léxica completa:
- Zero corrupção de sintaxe: o espaço em branco dentro de literais de string entre aspas é preservado verbatim, enquanto o espaço em branco estrutural (espaços ao redor de dois-pontos, vírgulas e colchetes) é completamente removido.
- Remoção de comentários: tolera e remove comentários de uma linha (
//) e de múltiplas linhas (/* */) comuns em arquivos de configuração JSONC. - Medição real de gzip: a saída minificada é comprimida com o próprio codificador
CompressionStream("gzip")do navegador, então o tamanho na rede informado é medido, e não modelado. Navegadores sem essa API recorrem a uma aproximação por entropia de Shannon, e o rótulo indica qual número você está vendo. - Análise de encurtamento de chaves: examina nomes de propriedades recorrentes. Quando chaves longas (por exemplo,
transactionIdentification) se repetem em centenas de entradas de um array, o relatório calcula a economia exata de bytes possível ao encurtá-las.
JSON formatado, sem compressão
{
"status": "ok",
"code": 200
}Exemplo de saída
{"status":"ok","code":200}Quais opções e casos-limite o Minificar JSON suporta?
| Parâmetro | Tipo | Padrão | Comportamento e casos-limite |
|---|---|---|---|
| Remoção de espaços em branco | Regra | RFC 8259 | Remove espaços, tabulações, CR e LF fora de literais de string. |
| Comentários JSONC | Sanitizador | Removido | Detecta e remove comentários // e /* */ sem danificar o conteúdo das strings. |
| Tamanho Gzip | Métrica | Medido | Comprimido com o codificador nativo gzip do navegador. Recai para uma estimativa de entropia (mostrada como "~") onde CompressionStream não está disponível. |
| Redução de Chaves | Análise | Reportado | Cataloga chaves repetidas com mais de 3 caracteres e calcula a economia potencial de bytes. |
Perguntas frequentes
Como a minificação reduz a latência de respostas de API?
A minificação reduz diretamente a carga bruta de bytes transferida em pacotes TCP/QUIC. Para cargas que ocupam múltiplos frames de MTU (1500 bytes), remover o espaço em branco inútil reduz o número de idas e vindas e diminui os ciclos de CPU de análise no navegador.
Minificar JSON afeta tipos de dados ou a precisão de floats?
Não. O minificador opera estritamente nos tokens da sintaxe JSON. Literais de string, números, precisões decimais e valores booleanos permanecem idênticos bit a bit.
Por que a ferramenta mostra um tamanho gzip?
Quase todos os servidores web de produção (Nginx, Cloudflare, Envoy) aplicam compressão gzip ou brotli às respostas JSON, então uma contagem de bytes sem compressão superestima o que realmente cruza a rede. O número exibido é produzido pelo próprio codificador gzip do seu navegador, por meio da API CompressionStream, ou seja, é o tamanho comprimido real e não uma modelagem dele. Em um navegador sem essa API, a ferramenta recorre a uma aproximação baseada em entropia e prefixa o número com um til.
Meu JSON minificado é processado em algum servidor?
Nunca. Toda a análise, a minificação e as métricas de compressão são executadas 100% localmente, na memória do seu navegador. Nenhum dado é enviado a nenhum servidor remoto.
O quanto minificar o JSON realmente reduz o tamanho de uma carga?
JSON indentado costuma ter de 10 a 30% de espaço em branco, então é aproximadamente isso que a minificação tira da contagem bruta de bytes. Depois do gzip, a economia é bem menor, porque compressores são muito bons com longas sequências de espaços — exatamente por isso esta ferramenta mostra os dois números lado a lado, em vez de exibir só o mais favorável.
Vale a pena minificar quando meu servidor já comprime as respostas?
Muitas vezes apenas marginalmente, e o objetivo de mostrar os dois números é permitir que você decida com um número, e não por hábito. Ainda compensa para JSON embutido em HTML ou em uma URL, para qualquer coisa servida sem compressão e para cargas armazenadas em repouso e cobradas por byte. Raramente compensa para uma resposta comum de API já comprimida com gzip, onde a diferença pode ficar abaixo de um por cento.