Blog Formação DEV

O que é JSON? Um Guia para Iniciantes

Vamos apresentar algumas das principais características e estrutura do formato JSON, fornecendo o primeiro passo para você manipular a ferramenta de forma otimizada em seus projetos.
O que é JSON? Um Guia para Iniciantes
Texto de: Camila Pessôa

Introdução

JSON, ou JavaScript Object Notation, é um formato de texto leve e autodescritivo projetado para facilitar o intercâmbio de dados entre sistemas, ou seja, o json funciona para trocar dados entre aplicações. Criado em 2002 por Douglas Crockford, o JSON se tornou um padrão amplamente adotado na comunicação web, especialmente em APIs e aplicações cliente-servidor. Sua simplicidade e legibilidade o tornam uma alternativa eficiente a formatos como XML, sendo independente de linguagem de programação — ou seja, funciona com Python, Java, PHP e muitas outras.

Vamos conhecer um pouco mais sobre o formato?

Estrutura do JSON

O JSON organiza dados em duas estruturas principais: objetos e arrays.

1. Objetos

Delimitados por chaves {}, são coleções de pares chave-valor, onde:

  • Chaves: Sempre são strings (entre aspas duplas).
  • Valores: Podem ser strings, números, booleanos (true ou false), null, objetos ou arrays.

Exemplo:

{
  "nome": "Maria Silva",
  "idade": 28,
  "estudante": false,
  "endereco": {
    "rua": "Avenida Brasil",
    "cidade": "São Paulo"
  },
  "telefones": ["11-98765-4321", "11-91234-5678"]
}

As chaves são: nome, idade, estudante… e os valores são os dados correspondentes.

2. Arrays

Delimitados por colchetes [], armazenam listas ordenadas de valores. 

Exemplo:

["maçã", "banana", "laranja"]  

Podemos também ter um array de objetos que pode ser utilizado para armazenar dados:

Exemplo:

[
  {
    "id": 1,
    "nome": "João",
    "ativo": true
  },
  {
    "id": 2,
    "nome": "Maria",
    "ativo": false
  }
] 

Conseguimos notar que podemos trabalhar com vários tipos de dados, vamos conhecer quais tipos o JSON suporta a seguir:

  1. Strings: Texto entre aspas duplas ("exemplo").
  2. Números: Inteiros ou decimais (10, 3.14).
  3. Booleanos: true ou false.
  4. Null: Representa um valor vazio (null).
  5. Objetos: Estruturas aninhadas.
  6. Arrays: Listas de valores.

Devido a sua flexibilidade, o JSON surge como uma ferramenta excelente para trabalhar com o tráfego de dados e possui inúmeras vantagens que vamos conhecer na sequência.

Vantagens do JSON e Casos de Uso

  • Leveza: Não possui tags redundantes como XML (ex: <nome>...</nome>).
  • Legibilidade: Estrutura clara para humanos e máquinas.
  • Independência de Linguagem: Suportado por quase todas as linguagens modernas.
  • Parse Rápido: Bibliotecas nativas garantem conversão eficiente (ex: JSON.parse() em JavaScript).

Pensando nisso, o JSON é aplicado em diferentes casos de uso, como:

1. APIs REST: A maioria das APIs retorna dados em JSON.

Exemplo: Uma requisição a api.com/usuarios pode retornar:

[{"id": 1, "nome": "João"}, {"id": 2, "nome": "Ana"}]  
  1. Arquivos de Configuração:
  • package.json no Node.js define dependências e scripts.

3. Armazenamento em Bancos NoSQL: MongoDB usa BSON (binário semelhante ao JSON).

4. Comunicação Cliente-Servidor: Envio de dados via AJAX em aplicações web.

Trabalhando com JSON em Código e Boas Práticas

Vamos entender brevemente como podemos manipular o código em JSON? 

Temos a seguir dois exemplos que fazem a conversão do JSON para os dados possam ser manipulados pela linguagem:

JavaScript

// Converter objeto JS para JSON (serialização)  
const usuario = { nome: "Carlos", idade: 35 };  
const jsonString = JSON.stringify(usuario); // Resultado: {"nome":"Carlos","idade":35}  

// Converter JSON para objeto JS (desserialização)  
const json = '{"nome":"Carlos","idade":35}';  
const objeto = JSON.parse(json);  
console.log(objeto.nome); // "Carlos"  

Python

import json  

# Dicionário para JSON  
usuario = {"nome": "Ana", "idade": 25}  
json_string = json.dumps(usuario)  # '{"nome": "Ana", "idade": 25}'  

# JSON para dicionário  
json_str = '{"nome": "Ana", "idade": 25}'  
objeto = json.loads(json_str)  
print(objeto["nome"])  # "Ana" 

Estes são apenas uma pequena parcela do potencial do formato JSON, pois é acessível em diferentes linguagens e, como notamos no exemplo, a sua própria manipulação acompanha as variações da linguagem escolhida. Porém, há algumas boas práticas que independem da linguagem, vamos conferir a seguir?

Boas Práticas

  1. Valide seu JSON: Use ferramentas como JSONLint para evitar erros de sintaxe.
  2. Formatação Legível: Utilize indentação e quebras de linha para facilitar a leitura.
  3. Evite Comentários: JSON não suporta comentários oficialmente.
  4. Cuidado com Aspas: Aspas simples (') são inválidas — use aspas duplas (").
  5. Segurança: Nunca use eval() para parsear JSON em JavaScript (risco de injeção de código).

Conclusão

O JSON é uma ferramenta essencial no desenvolvimento moderno, unindo simplicidade e eficiência na troca de dados. Seja em APIs, configurações ou bancos de dados, seu formato intuitivo e universal o torna indispensável. Dominar o JSON é um passo fundamental para qualquer pessoa que trabalhe com programação ou desenvolvimento web.

Você pode aprofundar seus conhecimentos no vídeo a seguir:

Dicas JavaScript: Notação Literal do Objeto, JSON e Suas DIFERENÇAS

Referências

Sobre o autor
Cod3r

Cod3r

Com mais de 400 mil alunos, a Cod3r é uma das principais escolas de tecnologia do País. Um de seus produtos mais importantes é a Formação DEV, com objetivo de preparar os profissionais para o mercado.

Ótimo! Inscreveu-se com sucesso.

Bem-vindo de volta! Registou-se com sucesso.

Assinou com sucesso o Blog Formação DEV .

Sucesso! Verifique o seu e-mail para obter o link mágico para se inscrever.

As suas informações de pagamento foram atualizadas.

Seu pagamento não foi atualizado.