Ir para o conteúdo
Totalmente local

Conversor de caso de chaves JSON

Renomear todas as chaves de um objeto JSON para camelCase, snake_case, kebab-case, PascalCase ou SCREAMING_SNAKE_CASE.

Entrada
Saída

Conversor de caso de chaves JSON

Cole um objeto ou array JSON e esta ferramenta renomeia cada chave para a convenção de nomenclatura que seu código realmente usa. Percorre a estrutura de forma recursiva, por isso um objeto profundamente aninhado sob vários níveis de propriedades tem todas as suas chaves convertidas, não apenas o nível superior. Use-a depois de obter um payload de uma API que usa snake_case para um codebase JavaScript ou TypeScript que espera camelCase, ou vice-versa ao preparar um corpo de pedido para um backend escrito em Python ou Ruby.

Escolha o estilo de destino entre camelCase, PascalCase, snake_case, kebab-case ou SCREAMING_SNAKE_CASE. Por padrão, cada chave é convertida, incluindo chaves que pertencem a objetos aninhados dentro de arrays — desative "Converter chaves dentro de arrays" se quiser apenas que objetos de nível superior e aninhados diretamente sejam tocados, deixando os itens de array exatamente como chegaram. O campo de exceções aceita uma lista separada por vírgula ou quebra de linha de nomes de chaves — como o campo _id ou __v de uma API — que devem permanecer intactos em qualquer lugar que apareçam na estrutura, não importa quão profundos.

Renomear duas chaves com estilos diferentes para o mesmo nome de destino é um risco real uma vez que estilos são misturados — foo_bar e fooBar ambas se tornam fooBar em camelCase, e uma delas substituirá silenciosamente a outra no resultado. Ative "Avisar sobre colisões de chaves" e a contagem sob a saída relata exatamente quantas colisões aconteceram, para que você perceba antes de enviar um payload com um campo ausente. A contagem também mostra quantas das chaves totais foram realmente renomeadas e o tamanho de byte da saída. Escolha indentação de 2 espaços, 4 espaços, tabulação ou minificada para corresponder à formatação do seu projeto.

Tudo é executado localmente no seu navegador — o JSON que você cola, incluindo qualquer dado privado que contenha, nunca é carregado ou enviado para um servidor. Quando estiver satisfeito com o resultado, copie-o, baixe-o como um arquivo .txt ou envie a saída diretamente para a entrada de outra ferramenta para encadear uma segunda transformação, como classificar as chaves renomeadas ou achatar o objeto.

FAQ

Renomeia chaves dentro de objetos e arrays aninhados?
Sim, por padrão, ele recursa em cada objeto aninhado, incluindo objetos dentro de arrays. Desative "Converter chaves dentro de arrays" para deixar os itens de array exatamente como estão.
O que acontece se duas chaves terminarem com o mesmo nome após a conversão?
A chave posterior sobrescreve a anterior na saída, como qualquer objeto JSON. Ative "Avisar sobre colisões de chaves" e a contagem sob a saída mostra exatamente quantas colisões aconteceram antes de confiar no resultado.
Posso manter algumas chaves exatamente como estão, como _id?
Sim. Liste-as no campo de exceções, separadas por vírgulas ou uma por linha, e elas permanecerão intactas em todos os níveis da estrutura.
O que conta como uma delimitação de palavras dentro de uma chave?
Underscores, hífens, espaços e letras maiúsculas camelCase/PascalCase marcam uma delimitação, portanto first_name, first-name e firstName se dividem nas mesmas duas palavras antes de serem reconstruídas no estilo de destino.
Meu JSON é carregado em algum lugar?
Não. A conversão de chaves é executada inteiramente no seu navegador — seu JSON, incluindo qualquer dado privado que contenha, nunca deixa seu dispositivo.