Formatação de código / MULTIVERTO

Achatar objeto JSON

Transforme propriedades de objeto JSON aninhadas em chaves de caminho de ponteiro JSON.

Conversor interativoSua entrada permanece neste navegador. Nenhum texto é enviado para conversão.

O arquivo permanece no seu navegador.
Encadear ferramentas

Aplique cada ferramenta de texto ao resultado anterior. Fluxos de trabalho com texto ↗

Somente o nome da sequência e a ordem das ferramentas são salvos neste navegador. Sua entrada e seus resultados nunca são salvos.

01 / Exemplo

Exemplo

Sua entrada{"usuario":{"nome":"Olá","mensagem":"Bem-vindo"},"ativo":true}
Resultado{ "/usuario/nome": "Olá", "/usuario/mensagem": "Bem-vindo", "/ativo": true }

02 / Guia

Achatar objeto JSON — Como funciona

O que a conversão faz

Transforme propriedades de objetos JSON aninhados em chaves de caminho JSON Pointer. Percorra os objetos aninhados e mantenha arrays e valores escalares como folhas.

Exemplo de trabalho

Neste exemplo, a entrada «{"usuario":{"nome":"Olá","mensagem":"Bem-vindo"},"ativo":true}» produz a saída «{ ⏎ "/usuario/nome": "Olá", ⏎ "/usuario/mensagem": "Bem-vindo", ⏎ "/ativo": true ⏎ }»; ⏎ representa uma quebra de linha real. Inspecione os delimitadores, nomes e tipos de valor alterados antes de usar esse resultado. Ao achatar o objeto JSON, compare um pequeno registro com o analisador de destino antes de transformar um arquivo ou solicitação completo. Transforme propriedades de objeto JSON aninhadas em chaves de caminho de ponteiro JSON.

Regras e limites de formato

O achatamento usa tokens JSON Pointer da RFC 6901 para representar nomes de propriedades de objetos. Uma barra separa os níveis do caminho; um til no nome da propriedade vira ~0, e uma barra nesse nome vira ~1. Trata-se de uma representação de caminhos, não de um método geral para compactar JSON. Os arrays permanecem valores folha inteiros, evitando confundir chaves numéricas de objetos com índices de arrays. Valores escalares e objetos vazios também permanecem folhas. A operação inversa recebe um objeto JSON plano cujas chaves são esses caminhos, cria objetos aninhados e rejeita caminhos conflitantes. Use chaves de caminho quando alguém precisar revisar qual propriedade aninhada mudou sem abrir todos os níveis do objeto. Um array na raiz fica fora do escopo desta operação, que exige um objeto no nível superior. Siga um ramo aninhado no resultado: cada propriedade de objeto adiciona um token separado por barra, enquanto um valor de array permanece ligado ao caminho que o alcançou. Para um objeto raiz vazio, a saída contém um único caminho vazio associado a um objeto vazio. Isso distingue um documento realmente vazio de uma conversão sem resultado. Antes de editar uma chave plana, determine se uma barra marca outro nível ou faz parte do nome literal de uma propriedade.

Verifique o resultado

Para uma conversão de ida e volta confiável, achate um objeto e depois reconstrua os caminhos gerados antes de usá-los em um patch ou importação. Compare a estrutura JSON reconstruída, incluindo objetos vazios, arrays e nomes de propriedades contendo barras ou tildes. Não edite manualmente um prefixo de caminho em uma folha escalar: a ferramenta reversa rejeita caminhos que se sobrepõem ou tentam criar filhos abaixo de uma folha. Tente uma propriedade contendo uma barra e outra contendo um til; seus tokens de caminho devem usar ~1 e ~0, enquanto um array permanece um valor de folha. A fonte e o resultado têm papéis diferentes, mesmo quando parecem semelhantes. O método acima define o subconjunto aceito em vez de cada extensão do formato nomeado. Para um sistema de recepção rigoroso, tente um pequeno caso conhecido antes de alterar muitos registros. Se a validação falhar, retorne à entrada original e ao primeiro erro relatado; editar apenas o resultado gerado pode ocultar a causa.

Como esta conversão transforma a entrada
JSON — Entrada
Ler e transformar estrutura
JSON — Resultado

Explorar guias

Guias de conversão

Explorar guias