CoderTools

Formatador JSON

Formate e valide seus dados JSON para facilitar a leitura e depuração. Suporta minificação, embelezamento e realce de sintaxe.

Como Usar o Formatador JSON

Passos para Usar

  1. Cole seus dados JSON na caixa de entrada à esquerda.
  2. Clique no botão "Formatar" para formatar os dados JSON em uma forma legível.
  3. Clique no botão "Minificar" para compactar os dados JSON em uma única linha.
  4. Clique no botão "Correção Automática" para corrigir automaticamente erros comuns de sintaxe JSON.
  5. Clique no botão "Copiar" para copiar o resultado para a área de transferência.
  6. Clique no botão "Limpar" para limpar as áreas de entrada e saída.
  7. Use a opção "Escapar Saída" para escapar a saída para incorporação no código do programa.
  8. Use a opção "Modo Escuro" para alternar o tema de exibição.

Exemplo de Saída Escapada

Quando a saída escapada está ativada, as strings JSON são escapadas para incorporação direta no código do programa. Por exemplo:

Saída Normal::

{ "message": "Hello \"World\"", "newline": "Line 1\nLine 2" }

Saída Escapada::

{\n \"message\": \"Hello \\\"World\\\"\",\n \"newline\": \"Line 1\\nLine 2\"\n}

Recursos

  • Formatação Automática: Embeleze seus dados JSON com indentação e quebras de linha adequadas.
  • Validação de Sintaxe: Verifique erros de sintaxe em seus dados JSON e forneça mensagens de erro.
  • Realce de Sintaxe: Marque pares chave-valor JSON e tipos de dados com cores diferentes.
  • Função Minificar: Converta JSON formatado em uma forma compacta de linha única para reduzir o tamanho dos dados.
  • Correção Automática: Corrija automaticamente erros comuns de sintaxe JSON, como chaves sem aspas e vírgulas extras.
  • Escapar Saída: Escape strings JSON para incorporação direta no código do programa.
  • Processamento Local: Todo o processamento de dados é feito no seu navegador, nada é enviado para servidores.
  • Processamento em Tempo Real: As alterações na entrada são processadas automaticamente e os resultados são atualizados.

O que é JSON?

JSON (JavaScript Object Notation) é um formato leve de intercâmbio de dados que é fácil para humanos lerem e escreverem, e fácil para máquinas analisarem e gerarem. JSON é baseado em um subconjunto da linguagem JavaScript, mas é um formato de texto completamente independente de linguagem, suportado pela maioria das linguagens de programação para análise e geração. JSON foi proposto por Douglas Crockford no início dos anos 2000 e foi padronizado em ECMA-404 e RFC 8259.

Regras de Sintaxe JSON

  • Dados são representados como pares chave/valor
  • Dados são separados por vírgulas
  • Chaves {} contêm objetos
  • Colchetes [] contêm arrays
  • Chaves devem ser strings entre aspas duplas
  • Valores podem ser strings, números, objetos, arrays, booleanos ou null

Tipos de Dados JSON

Tipo Descrição Exemplo
String Sequência de caracteres Unicode entre aspas duplas "Hello World"
Número Número inteiro ou de ponto flutuante, valores não numéricos não são suportados 42, 3.14
Objeto Coleção não ordenada de pares chave/valor {"name": "John"}
Array Coleção ordenada de valores [1, 2, 3]
Booleano true ou false true
null Valor vazio null

Algoritmo de Formatação JSON

O processo de formatação JSON envolve principalmente duas etapas: análise e regeneração. Primeiro, o analisador lê a string JSON e constrói uma representação na memória, depois o formatador regenera a string com indentação e quebras de linha específicas. Aqui está um processo de formatação simplificado:

// Simplified JSON formatting implementation
function formatJSON(jsonStr, indentSize = 2) {
  try {
    // Step 1: Parse JSON string to JavaScript object
    const obj = JSON.parse(jsonStr);
    
    // Step 2: Convert object back to string with indentation
    return JSON.stringify(obj, null, indentSize);
  } catch (e) {
    // Handle invalid JSON
    throw new Error("Invalid JSON: " + e.message);
  }
}

// Usage example
const uglyJson = '{"name":"John","age":30,"city":"New York"}';
const prettyJson = formatJSON(uglyJson);
console.log(prettyJson);
/*
Output:
{
  "name": "John",
  "age": 30,
  "city": "New York"
}
*/

Comparação entre JSON e XML

Recurso JSON XML
Sintaxe Concisa, usando chaves e colchetes Mais complexa, usando tags e atributos
Tamanho do Arquivo Geralmente menor que XML Geralmente maior que JSON
Velocidade de Análise Mais rápida Mais lenta
Tipos de Dados Suporta tipos de dados básicos Todos os dados são texto
Namespaces Não suportado Suportado
Comentários Não suportado Suportado
Usabilidade Mais amigável para desenvolvedores Mais estruturado e rigoroso

Problemas Comuns e Soluções

Problema: Erro de análise JSON - vírgula ou colchete ausente

Solução: Verifique todos os colchetes de fechamento de objetos e arrays, certifique-se de que cada par chave/valor seja seguido por uma vírgula (exceto o último).

Problema: Erro de análise JSON - valor de chave inválido

Solução: Certifique-se de que todas as chaves estejam entre aspas duplas, aspas simples ou nomes de chaves sem aspas não são suportados.

Problema: Problema de tamanho de dados JSON

Solução: Para dados JSON grandes, considere usar a versão compactada para transmissão e depois formatá-la para exibição no cliente.

Para mais informações oficiais sobre JSON, consulte os seguintes recursos: JSON.org | RFC 8259 | Wikipedia: JSON