Ordene chaves de objetos JSON no navegador
Ordene chaves de JSON estrito em ordem crescente ou decrescente, recursivamente ou na raiz, preservando arrays e tokens numéricos originais localmente.
Espaço de trabalho da ferramenta
Ordenar chaves JSON
Ative JavaScript para ordenar JSON localmente no navegador.
As chaves usam ordem textual UTF-16: "10" vem antes de "2" na ordem crescente. Ignorar maiúsculas converte apenas A–Z; É e é continuam distintos. Apenas raiz deixa sem ordenar objetos de uma raiz array. Arrays mantêm as posições dos elementos. Espaços e escapes de strings podem ser normalizados.
Arquivo: 4.000.000 bytes; entrada: 1.000.000 unidades UTF-16; profundidade: 200 contêineres; nós: 100.000; saída: 2.000.000 unidades UTF-16.
Opções de ordenação
Orçamentos: 1.000.000 unidades de análise, 1.000.000 de serialização e 1.000.000 de ordenação. Prefixos longos ou indentação podem esgotar um orçamento antes dos limites de tamanho. Não há garantia de aceitar todos os máximos simultaneamente.
O processamento fica no navegador. Sem envios, URLs remotas ou documentos salvos. Não é canonicalização criptográfica nem JCS.
{"z":{"2":"dos","10":"diez"},"a":[{"b":2,"a":1}]}Pronto para ordenar.
Os diagnósticos estão incompletos: a inspeção parou ou atingiu o orçamento.
Selecione e copie o texto completo ou pressione Copiar novamente com uma nova ativação do navegador.
Ordene chaves com uma ação explícita
Cole JSON estrito ou abra um arquivo .json UTF-8. Pressione Ordenar chaves para gerar um resultado separado. Os padrões são crescente, sensível a maiúsculas, recursivo e dois espaços com LF. Há também quatro espaços, tabulação e saída minificada. Carregar um exemplo ou mudar opções não inicia o processamento.
O exemplo compartilhado é:
{"z":{"2":"dos","10":"diez"},"a":[{"b":2,"a":1}]}
Com as opções padrão:
{
"a": [
{
"a": 1,
"b": 2
}
],
"z": {
"10": "diez",
"2": "dos"
}
}
Ordem textual, maiúsculas e escopo
Chaves decodificadas são comparadas ordinalmente por unidades UTF-16. Chaves numéricas são texto: "10" vem antes de "2" na ordem crescente. A ordem sensível é A,B,a,b; Ignorar maiúsculas A–Z produz A,a,B,b, usando a chave original no desempate. Decrescente inverte o resultado inteiro, incluindo desempates. Acentos não são convertidos: É e é continuam distintos e Unicode não é normalizado.
O modo recursivo ordena todos os objetos, inclusive dentro de arrays. Apenas objeto raiz mantém a sequência fonte dos objetos descendentes; se a raiz for um array, seus objetos não são ordenados. Arrays mantêm a quantidade e as posições dos elementos. Raízes primitivas, objetos e arrays vazios são válidos. Sem objetos elegíveis, a formatação se aplica e aparece um aviso informativo.
Preserve valores e rejeite ambiguidades
Strings, chaves decodificadas, booleanos, null e estruturas preservam seus valores. Os tokens originais 9007199254740993, 0.10000000000000001, -0 e 1E+02 são preservados exatamente. O aviso de precisão descreve o valor interno aproximado do parser, não arredondamento da saída. Números fora do intervalo do parser, como 1e400, falham explicitamente.
{"a":1,"\u0061":2} falha por conter uma chave decodificada duplicada; nenhuma ocorrência é sobrescrita silenciosamente. Comentários, JSONC, JSON5 e JSON malformado são rejeitados. Uma assinatura BOM inicial é removida com aviso; uma segunda assinatura é erro de sintaxe. A saída é reformatada com LF, sem BOM nem quebra final; espaços e grafia exata dos escapes não são preservados. Não é JCS nem canonicalização criptográfica para assinaturas.
Limites, exportações completas e processamento local
Arquivos podem ter até 4.000.000 bytes originais. A entrada aceita 1.000.000 unidades UTF-16, profundidade de 200 contêineres, 100.000 nós fonte e saída de 2.000.000 unidades UTF-16. Análise, serialização e ordenação têm cada uma um orçamento de 1.000.000 unidades de trabalho; prefixos longos ou indentação profunda podem esgotá-lo antes do teto de tamanho. Esses máximos não são garantidos simultaneamente. A operação tem 15 segundos e a recuperação da saída tem 5 segundos. São mostrados até 100 diagnósticos e uma prévia de 20.000 unidades.
A prévia truncada pode ser JSON incompleto. Copiar tudo e Baixar JSON recuperam o resultado completo com todos os dígitos. Se a área de transferência falhar, use o campo completo para cópia manual ou Copiar novamente. O download usa json-sorted.json, UTF-8 e MIME JSON.
Tudo é processado no navegador, sem envios, URLs remotas ou armazenamento de documentos. Cancelar mantém a fonte e as opções. Editar, escolher um arquivo, mudar opções ou limpar invalida resultados e exportações anteriores. Limpar mantém as opções escolhidas. É necessário JavaScript e um navegador com Worker.