O que é JSON: estrutura, tipos e erros comuns

Entenda o que é JSON, os tipos de dados (objeto, array, string, número, boolean e null), a diferença entre JSON válido e objeto JavaScript, os erros de sintaxe mais comuns e por que validar antes de usar em uma API.

Revisado pela equipe editorial ValorFinalECMA-404 / RFC 8259 / MDN

JSON é o formato de dados mais usado na web moderna: APIs, configurações, bancos de dados e integrações trocam informação em JSON o tempo todo. Entender sua estrutura e seus erros comuns evita muita dor de cabeça. Neste guia você vê o que é JSON, os tipos de dados, a diferença para um objeto JavaScript e por que validar antes de usar. Para formatar e validar, use o formatador e validador de JSON.

O que é JSON

JSON (JavaScript Object Notation) é um formato de texto leve para representar e transmitir dados. Apesar do nome, é independente de linguagem: praticamente toda linguagem moderna sabe ler e gerar JSON. Sua popularidade vem da simplicidade: é fácil de ler, escrever e processar.

Os tipos de dados

Exemplo simples

Um objeto JSON descrevendo uma pessoa teria uma chave nome com uma string, uma chave idade com um número, uma chave ativo com um boolean e uma chave tags com um array de strings. Cada par é separado por vírgula, e o objeto inteiro fica entre chaves. As chaves sempre vêm entre aspas duplas, e não pode haver vírgula sobrando após o último par.

JSON x objeto JavaScript

Embora pareçam iguais, há diferenças importantes. O JSON é estrito: chaves sempre entre aspas duplas, sem comentários, sem funções e sem vírgula final. Um objeto JavaScript é mais flexível: aceita aspas simples, chaves sem aspas, funções e comentários. Por isso, copiar um objeto do código e tratar como JSON costuma gerar erro de sintaxe.

Erros comuns

Por que validar antes de usar em uma API

Um JSON malformado quebra a comunicação: a API rejeita a requisição ou o sistema lança um erro de parse. Validar e formatar antes de enviar evita falhas difíceis de rastrear. Ferramentas como o validador de JSON apontam exatamente onde está o problema. Para outras tarefas de desenvolvimento, veja o codificador Base64, o URL encoder/decoder e o guia o que é JWT.

Segurança

Ferramentas de JSON devem processar tudo localmente. No ValorFinal, o conteúdo que você cola não sai do seu navegador. Mesmo assim, tenha cuidado ao colar dados sensíveis em ferramentas online de terceiros: só use as que garantem processamento local. Veja também como validamos os cálculos.

Calculadoras deste guia

Como validamos os cálculos

Os valores citados neste guia são estimativos e baseados em fontes oficiais (ECMA-404 / RFC 8259 / MDN). Eles podem variar conforme convenção coletiva, situação individual e atualizações da legislação. Entenda nossa metodologia em como validamos os cálculos.

Perguntas frequentes

O que é JSON?
JSON (JavaScript Object Notation) é um formato de texto leve para troca de dados entre sistemas. Ele organiza informações em pares de chave e valor e é fácil de ler tanto para pessoas quanto para máquinas. É o formato mais usado em APIs web e arquivos de configuração.
Quais tipos de dados o JSON aceita?
Seis tipos: objeto (entre chaves), array (entre colchetes), string (entre aspas duplas), número, boolean (true ou false) e null. Não existe data nativa nem comentários no JSON padrão: datas costumam ser representadas como string.
Qual a diferença entre JSON e objeto JavaScript?
JSON é um formato de texto com regras estritas: chaves sempre entre aspas duplas, sem vírgula sobrando no fim, sem funções nem comentários. Um objeto JavaScript é uma estrutura na linguagem, mais flexível (aspas simples, chaves sem aspas, funções). Todo JSON válido pode virar objeto, mas nem todo objeto é JSON válido.
É seguro validar JSON em uma ferramenta online?
Depende de como a ferramenta funciona. No ValorFinal, a validação de JSON é 100% local no navegador: o conteúdo não é enviado a nenhum servidor. Ainda assim, evite colar dados sensíveis em ferramentas de terceiros sem saber se o processamento é local. Sempre prefira ferramentas que processam tudo no próprio navegador.