
Um flattener JSON converte um objeto JSON aninhado em um objeto de nível único cujas chaves são o caminho completo para cada valor, então {"user":{"city":"Austin"}} torna-se {"user.city":"Austin "}. As matrizes se achatam da mesma maneira, usando o índice como um segmento de caminho: {"roles":["admin", "editor"]} torna-se {"roles.0":"admin", "roles.1": "editor"}. O resultado é um mapa plano do caminho para o valor da folha sem nenhum aninhamento restante.
A achatamento é como você obtém respostas de API profundamente aninhadas e arquivos de configuração em formatos que entendem apenas pares de chave-valor planos colunas de planilha, variáveis de ambiente, chaves de mensagem i18 n pontilhadas, armazenamentos de bandeira de recursos e muitos pipelines de registro e análise esperam um nível de chaves, e um caminho pontilhado, como o user.address.city, é a maneira padrão de transportar a estrutura original através deles A operação inversa, não achatada, reconstrói o objeto aninhado e suas matrizes a partir dessas chaves pontilhadas, de modo que a transformação seja uma viagem de ida e volta sem perdas em ambas as direções.
Esta ferramenta é executada inteiramente no seu navegador. Ele analisa o JSON, caminha até os valores leaf e serializa o resultado plano ou aninhado sem enviar nada para um servidor. Nada é carregado, registrado ou armazenado, o que mantém as cargas úteis com tokens, IDs ou dados pessoais em sua máquina, e a ferramenta continua funcionando offline assim que a página for carregada.
Estrutura de negociações de achatamento para uma forma que planilhas, codificadores de formulário e variáveis de ambiente podem transportar, e a viagem de ida e volta é sem perdas em ambas as direções desde que uma coisa seja válida: suas chaves ainda não devem conter o delimitador Uma chave chamada "user.name" achatada com um ponto é indistinguível de um objeto aninhado, e o não achatamento o transformará em um. Altere o delimitador para algo que os dados não usam quando isso é um risco Os índices de matriz tornam-se segmentos de caminho numéricos, de modo que os itens.0.id endereçam o primeiro elemento, e um não achatador tem que decidir se uma chave numérica significa uma matriz ou um objeto com teclas numéricas Objetos vazios e matrizes vazias são preservados explicitamente em vez de descartados, uma vez que perdê-los mudaria o significado de um arquivo de configuração.
Flatten transforma JSON aninhado em teclas pontilhadas Unflatten reconstrói objetos aninhados e matrizes de teclas pontilhadas Carregue a amostra para ver ambas as direções.
Cole um objeto aninhado para achatar, ou um objeto plano com teclas pontilhadas para não achatar A entrada deve ser JSON válida; erros de análise são relatados com a posição exata.
Escolha o delimitador, geralmente um ponto, e escolha a notação de ponto (papéis.0) ou colchete (papéis [0]) para índices de matriz Mantenha as mesmas configurações para ambas as direções para que a viagem de ida e volta corresponda.
Pressione o botão de ação e, em seguida, copie a saída para sua área de transferência ou baixe-a como um arquivo.json A contagem de chaves confirma quantas folhas foram produzidas.
Achate um objeto aninhado, depois desajuste o resultado, e você obtém o verso original, incluindo arrays, nulos, booleanos e contêineres vazios As duas operações são inversas exatas.
Os itens da matriz mantêm seu índice no caminho, portanto, a ordem sobrevive à viagem de ida e volta Escolha a notação de ponto (itens.0.id) ou a notação de colchete (itens [0].id) para corresponder ao sistema que você está alimentando.
Use um ponto por padrão ou mude para outro separador quando suas teclas de destino já contiverem pontos. O mesmo delimitador aciona tanto o achatamento quanto o não achatamento.
Um objeto vazio ou matriz vazia é mantido como um valor folha em vez de silenciosamente descartado, de modo que uma configuração que depende de uma lista vazia ainda faz viagens de ida e volta corretamente.
Generate a JSON Schema from any JSON sample. Infers types, merges arrays of objects into one item schema, derives required fields, and detects date-time, email, uri, and uuid formats. Draft-07 and 2020-12 output. 100% client-side.
Sort the keys of a JSON object alphabetically, recursively through nested objects, with optional array sorting. Ascending or descending, minify or pretty. Client-side, no signup.
Generate TypeScript interfaces from any JSON sample. Infers nested types, merges arrays of objects into a single interface, marks nullable and missing keys optional, and emits clean exportable code. 100% client-side.
Convert JSON to clean, valid YAML instantly - configurable indentation and safe string quoting
0 comments
No comments yet. Be the first to share your thoughts!