JSON Stringify
Ferramenta online gratuita JSON Stringify / Parse. Com um clique, serialize objetos JSON em strings com aspas prontas para incorporar em código ou URL; também suporta o modo Parse reverso para restaurar objetos JSON.
Sugestões Relacionadas
O que é JSON Stringify (Serialização JSON e Incorporação em String)?
JSON Stringify (serialização JSON) é a conversão de um objeto JSON (ou array, valor) em uma representação de string em conformidade com RFC 8259. Em JavaScript, a forma padrão é chamar `JSON.stringify(obj)`, que produz uma string com aspas duplas como `{"name":"Alice"}` - isso completa 'objeto → string', e o resultado é ele próprio JSON válido que pode ser re-analisado por qualquer JSON.parse().
Mas em projetos de engenharia reais, os desenvolvedores frequentemente precisam 'incorporar' ainda mais o resultado da serialização em outro texto - isso é o que a ferramenta JSON Stringify realmente resolve: ① Inserir a string JSON em código fonte JavaScript / Java / Python / Go como inicializador de variável; ② Salvar a string JSON em uma coluna TEXT de banco de dados, valor Redis ou payload de fila de mensagens; ③ Usar a string JSON como valor de outro campo JSON ('JSON aninhado', ex. logs de auditoria ou respostas API que envolvem o corpo completo de uma chamada anterior); ④ Inserir a string JSON em parâmetros de consulta URL ou cabeçalhos HTTP para transmissão entre serviços.
Nesses cenários de 'incorporação dupla', a saída bruta de `JSON.stringify()` não é suficiente - quebras de linha, aspas duplas e barras invertidas dentro da string devem ser escapadas novamente, ou elas quebrarão a estrutura externa. A ferramenta JSON Stringify da GeekFormat executa automaticamente um 'escape de incorporação' sobre a serialização padrão: envolve o resultado em outro par de aspas duplas e escapa com barra invertida todos os caracteres especiais (", \, \n, \r, \t, \b, \f) dentro, de modo que a saída possa ser colada em qualquer código ou texto sem quebrar a sintaxe externa. Combinado com o modo Parse, você também pode restaurar completamente tais strings escapadas de volta para objetos JSON legíveis. O processo inteiro acontece localmente no navegador; nada é carregado.
Casos de uso
- Serialize objetos JSON como literais de string e atribua diretamente a variáveis JavaScript / Java / Python / Go
- Aninhe JSON de respostas API em outro campo JSON (um valor string dentro do JSON externo)
- Salve strings JSON em colunas TEXT de BD, valores Redis, payloads de fila de mensagens - em qualquer lugar que requeira uma string
- Transmita strings JSON como parâmetros de consulta URL ou partes de um caminho entre serviços
- Incorpore trechos de código JSON legíveis em documentos Markdown, HTML, LaTeX
- Analise inversamente as strings JSON em logs/arquivos de configuração de volta para estruturas de objeto para revisão humana
Como Usar
- Cole o conteúdo JSON (objeto / array / valor) na caixa de entrada esquerda, ou clique em 'Exemplo' para carregar um JSON típico, ou faça upload de um arquivo .json/.txt
- Escolha o modo de processamento: Stringify padrão (objeto → string incorporável); para análise reversa, clique em 'Parse' para mudar para string → objeto
- No modo Stringify, alterne entre formato 'Pretty' (indentação 2 espaços) ou 'Compact' (uma linha) conforme necessário
- A caixa de saída direita atualiza em tempo real; após confirmação, clique em 'Copiar' para colar a string em código / documentos, ou clique em 'Baixar' para salvar como stringified.txt / parsed.json
Recursos
- Modo bidirecional: suporta Stringify (objeto JSON → string com aspas incorporável) e Parse (string com aspas → objeto JSON)
- Escape de incorporação inteligente: sobre o JSON.stringify padrão, envolve automaticamente com aspas e escapa ", \, \n, \r, \t e outros caracteres especiais; cole diretamente em código ou texto
- Indentação configurável: suporta indentação 0/2 espaços e modo compacto de uma linha, adaptando-se a diferentes estilos de código e necessidades de otimização de tamanho
- Incorporação direta no código: o resultado da serialização pode ser atribuído diretamente a variáveis JavaScript, Java, Python, Go e outras linguagens principais sem escape manual
- Otimizado para cenário URL / banco de dados: as strings de saída podem ser inseridas com segurança em parâmetros de consulta, corpo HTTP, colunas TEXT de BD, documentos Markdown
- Restauração reversa completa do Parse: remove corretamente as aspas externas e desescapa todas as sequências \n, \t, \", \\ de volta para um objeto JSON padrão
- Processamento local para privacidade: análise, escape, desescape e formatação acontecem localmente no navegador, nenhuma entrada enviada a um servidor
- Carregamento de arquivos e exemplos: suporta upload de arquivos .json/.txt ou carregamento de exemplos com um clique para verificação rápida do efeito do escape
Exemplos de Código
Incorporação no código fonte com JavaScript JSON.stringify
javascript// No negócio você precisa incorporar um trecho JSON como literal de string no código JS
const data = { name: 'Alice', age: 30, tags: ['dev', 'writer'] };
// Serialização padrão
const json = JSON.stringify(data, null, 2);
// Escape de incorporação: envolva com aspas externas + escape " \ \n \r \t internos
const embedded = '"' + json
.replace(/\\/g, '\\\\')
.replace(/"/g, '\\"')
.replace(/\n/g, '\\n')
.replace(/\r/g, '\\r')
.replace(/\t/g, '\\t') + '"';
// Análise reversa
const restored = JSON.parse(embedded);
console.log(restored.name); // 'Alice'Incorporação com Python json.dumps + desescape
pythonimport json
data = {"name": "Alice", "age": 30, "tags": ["dev", "writer"]}
# Serialize e indente
pretty = json.dumps(data, indent=2, ensure_ascii=False)
print(pretty)
# Escape de incorporação: json.dumps faz o escape completo para você
embedded = json.dumps(pretty) # o valor literal de string
print(embedded) # '"{\\n \\"name\\": \\"Alice\\",...\\n}"'
# Análise reversa
restored = json.loads(json.loads(embedded))
print(restored["name"]) # AliceIncorporar JSON como string na linha de comando com jq
bash# Serializa data.json em uma string com aspas incorporável
jq -Rs . data.json
# Explicação: -R (raw input) + -s (slurp) trata o arquivo inteiro como uma string,
# depois . converte para literal de string JSON com " \ \n auto-escapados internamente
# Reverso: analisa uma string de volta para JSON
echo '"{\"name\":\"Alice\"}"' | jq -r .Perguntas frequentes
JSON Stringify é o mesmo que JSON.stringify()?
A lógica subjacente é a mesma - ambos serializam um objeto JSON em uma string. A diferença é que esta ferramenta, sobre a serialização padrão, também envolve o resultado em outro par de aspas duplas e escapa com barra invertida todos os caracteres especiais internos, de modo que a saída possa ser colada diretamente em código, URLs e campos de banco de dados como 'literal de string' sem escrever escapes manualmente.
Qual é a diferença entre Stringify e JSON Escape?
JSON Stringify converte um objeto JSON inteiro em uma string com aspas incorporável. JSON Escape apenas adiciona escape de barra invertida a caracteres especiais em uma string existente, sem modificar a estrutura do objeto. O primeiro visa 'objeto → string incorporável'; o segundo visa 'string → string segura'. Quando sua entrada já é JSON válido e você precisa incorporá-lo em código, use Stringify; quando sua entrada é um trecho de texto simples, use Escape.
O Stringify tornará o JSON menos legível?
Nenhum dado é perdido. Por padrão ele preserva a indentação de 2 espaços e quebras de linha, então o resultado ainda é JSON válido e legível. Se você precisar de uma string de uma linha mais curta para cenários de incorporação sensíveis ao tamanho, mude para o modo 'Compact'.
O modo Parse pode restaurar strings com sequências \n \t \"?
Sim. O modo Parse detecta automaticamente se a entrada está envolta em aspas externas, desescapa todas as sequências comuns como \n, \r, \t, \", \\ de acordo com as regras JSON, e analisa de volta para um objeto JSON padrão. Note que a entrada deve ser uma string legalmente escapada, caso contrário um SyntaxError é reportado.
A saída do Stringify pode ir diretamente para uma URL?
Pode, mas recomendamos uma etapa adicional de URL Encode. Stringify lida com caracteres de sintaxe JSON (", \, quebras de linha), enquanto URLs também tratam &, =, espaço, chinês como caracteres reservados. Para parâmetros de URL, você deve chamar adicionalmente encodeURIComponent - esta ferramenta é responsável apenas pela segurança no nível JSON.
Como lidar com JSON aninhado (uma string JSON como valor de outro JSON)?
O modo Stringify primeiro serializa o JSON interno normalmente para obter uma string, depois executa um 'escape de incorporação' nessa string (aspas mais externas, escape interno de ", \, \n). O resultado é um 'valor de campo string válido do JSON externo' que pode ser colado diretamente no JSON externo. O modo Parse faz o oposto.
A ferramenta modifica a ordem dos campos ou nomes das chaves?
Não. Stringify emite estritamente na ordem atual dos campos do objeto de entrada, e não altera maiúsculas/minúsculas, espaçamento ou singular/plural nos nomes das chaves. Se você precisa unificar a ordem das chaves, execute JSON Sort primeiro; se as chaves contiverem chinês ou caracteres especiais, a ferramenta os emite de acordo com a especificação JSON.
O resultado pode ser salvo como arquivo diretamente?
Sim. No modo Stringify, clicar em 'Baixar' salva como stringified.txt (string simples); no modo Parse, salva como parsed.json (arquivo JSON padrão). Você também pode copiar para a área de transferência e colar em código ou documentos.
Haverá lag com entradas de alguns MB?
Esta ferramenta é otimizada para entradas dentro de 1-3 MB; entradas maiores (ex. 10 MB+) ainda podem ser processadas, mas serão limitadas pela memória do navegador. Recomendações: ① execute JSON.stringify localmente em um script Node.js para arquivos enormes; ② divida em lotes menores para usar esta ferramenta; ③ feche outras abas do navegador para liberar memória.
É normal ter chinês/emoji na saída do Stringify?
Sim. A especificação JSON permite que caracteres Unicode não-ASCII (incluindo chinês, emoji) apareçam diretamente dentro de strings, e eles não serão auto-escapados para \uXXXX. Apenas ", \ e caracteres de controle são escapados. Se você precisar da forma \uXXXX (ex. para compatibilidade com protocolos legados), pode pós-processar a saída no código.
A ferramenta carrega meu JSON em um servidor?
Não. Serialização, desserialização, escape, desescape e formatação acontecem todos localmente no navegador; nem a entrada nem os resultados intermediários são enviados a nenhum servidor. Funciona offline, adequado para processar configurações internas, respostas API e JSON sensíveis.
Qual é a melhor ordem de uso com JSON Compress e JSON Formatter?
Cadeia recomendada: ① Reparar JSON (limpar JSON ilegal) → ② Formatar JSON (padronizar indentação) → ③ JSON Sort (unificar ordem das chaves para comparação) → ④ Esta ferramenta Stringify (incorporar em string) → ⑤ JSON Escape (escape no nível de caractere para trechos de texto simples). Escolha os passos que precisar.
Solução de Problemas
Stringify mostra erro 'Invalid JSON'
Causa: a entrada não é JSON válido, ex. vírgulas finais, aspas simples, nomes de chaves sem aspas, comentários. Solução: use primeiro a ferramenta Reparar JSON da GeekFormat para limpar, depois volte para Stringify; ou remova manualmente os caracteres ilegais em um editor e tente novamente.
A saída não é JSON válido após o Parse
Causa: a string de entrada não está corretamente envolta em aspas externas, ou os caracteres de escape internos estão quebrados (ex. alguns editores removem automaticamente \). Solução: verifique se a entrada começa com " ou '; procure caracteres \ não pareados; restaure primeiro com a ferramenta Reparar JSON, depois Parse.
A ordem dos campos muda após o Stringify
Causa: alguns navegadores ordenam automaticamente chaves inteiras puras (ex. "0": ..., "1": ...) por ordem numérica. Solução: mude as chaves inteiras para chaves de string ("k0", "k1") antes do processamento; ou use primeiro a ferramenta JSON Sort para organizar as chaves na ordem desejada, depois Stringify.
SyntaxError ao incorporar em código JS
Causa: a junção manual perdeu escapes de barra invertida, ou a aspa externa usou aspas simples enquanto a string contém aspas simples não escapadas. Solução: copie diretamente a saída do modo Stringify desta ferramenta, sem edição manual; se precisar usar aspas simples, substitua todos os ' internos por \'.
A saída mostra \uXXXX em vez de chinês
Causa: esta ferramenta emite caracteres originais por padrão (chinês/emoji exibido diretamente); se você vê \uXXXX, sua entrada já era uma string escapada. Solução: desescape inversamente uma vez no modo Parse, ou no código use ensure_ascii=False (Python) / um serializador que não escapa.
Arquivos grandes (10 MB+) congelam ou travam o navegador
Causa: analisar um texto grande com JSON.parse de uma vez ocupa muita memória. Solução: corte a entrada em lotes de 1-2 MB; processe arquivos enormes localmente com Node.js (`JSON.stringify`) ou Python (`json.dumps`); use esta ferramenta para verificação manual pequena depois.
Glossário
- JSON.stringify
- Método embutido em JavaScript que serializa um valor JS em uma string JSON; o resultado retornado é ele próprio JSON válido que pode ser re-analisado por JSON.parse, mas por padrão não contém aspas externas ou escape adicional.
- JSON.parse
- Método embutido em JavaScript que analisa uma string em conformidade com RFC 8259 em um valor JS; lança SyntaxError imediatamente em qualquer erro de sintaxe.
- Serializar
- O processo de converter uma estrutura de dados em memória (objeto/array) em um formato de texto armazenável/transmissível (string JSON). JSON Stringify é a implementação mais comum.
- Desserializar
- O inverso da serialização - restaurar uma string JSON de volta para um objeto/array em memória. Corresponde ao JSON.parse.
- Escape
- Adicionar uma barra invertida antes de caracteres especiais (" → \", \ → \\, \n → \n, etc.) para que a string possa ser incorporada com segurança em código ou texto externo sem quebrar a sintaxe externa.
- Literal de String
- Uma constante de string envolta em um par de aspas no código fonte. A forma de saída final de JSON Stringify é exatamente o literal de string de JS/Java/Python e outras linguagens.
- Escape Duplo
- Uma string que já foi escapada uma vez é escapada novamente quando incorporada em outra camada. Por exemplo, `\n` com escape duplo se torna `\\n` - um bug comum de junção manual em logs e armazenamento de banco de dados.
- Escape Unicode (\uXXXX)
- JSON permite `\uXXXX` para representar qualquer caractere Unicode. A biblioteca padrão JS não converte automaticamente chinês/emoji para `\uXXXX` a menos que `ensure_ascii=True` seja explicitamente especificado.
- ensure_ascii (Python)
- Parâmetro do módulo json.dumps do Python. Quando True (padrão), converte todos os caracteres não-ASCII em `\uXXXX`; quando False, mantém os caracteres originais.
- URL Encode
- Converte caracteres reservados de URL (&, =, espaço, chinês, etc.) para a forma `%XX`. JSON Stringify lida apenas com caracteres de sintaxe JSON; parâmetros de URL também precisam de encodeURIComponent.
Referência de Escape de Caracteres JSON Stringify
| Caractere original | Após Stringify | Nome | Nota |
|---|---|---|---|
" | \" | Aspas duplas | Deve ser escapado ou fecha a aspa externa |
\ | \\ | Barra invertida | O caractere de escape em si precisa de representação dupla |
Nova linha LF | \n | Newline | Strings multi-linha devem ser escapadas ao comprimir para uma linha |
Retorno de carro | \r | Carriage Return | CR em finais de linha Windows CRLF |
Tabulação | \t | Tab | Escape de tabulação de indentação |
Backspace | \b | Backspace | Escape de caractere de controle |
Form feed | \f | Form Feed | Escape de caractere de controle |
/ | / | Barra | Permitido, mas não exigido pelo padrão JSON |
JSON.stringify vs Ferramenta Stringify vs JSON Escape
| Ferramenta | Entrada | Saída | Cenário típico |
|---|---|---|---|
| JSON.stringify() | Objeto JS | String JSON válida | Respostas API, persistência de arquivos, JSON entre serviços |
| Esta ferramenta modo Stringify | Objeto JSON | String incorporável com aspas externas + escapes internos | Incorporar em código, URL, campos string de BD |
| Esta ferramenta modo Parse | String stringified | Objeto JSON padrão | Restaurar strings em logs/BD para objetos |
| Ferramenta JSON Escape | String simples | String com apenas caracteres especiais escapados | Escapar caracteres especiais em SQL/HTML/Shell |
| JSON.stringify(value, replacer, space) | Objeto JS + filtro/indentação opcional | String JSON indentada/filtrada | Logs de depuração, gerar arquivos JSON legíveis |
Authoritative References
- Comprimir JSON
- CSV para JSON
- JSON para CSV
- JSON Diff
- JSON Escape / Unescape
- Achatamento de JSON
- Formatador JSON
- Gerador de JSON
- Consulta JSONPath
- Mesclar JSON
- Reparar JSON
- Validador JSON Schema
- Ordenar JSON
- JSON Stringify
- JSON para HTML
- JSON para Java
- JSON to Markdown
- JSON para SQL
- JSON para TOML
- JSON para TypeScript
- XML para JSON
- JSON para XML
- YAML para JSON
- JSON para YAML
- JSON para Python
- JSON para Go
- JSON para Rust
- JSON para Swift
- JSON para C#
- JSON para C++
- JSON para PHP