Tutorial JSON: Aprenda com formato de arquivo simples EXEMPLO
O que รฉ JSON?
JSON รฉ um formato de arquivo utilizado para armazenar informaรงรตes de forma organizada e de fรกcil acesso. Sua forma completa รฉ JavaNotaรงรฃo de Objeto de Script. Ela oferece uma coleรงรฃo de dados legรญvel por humanos que pode ser acessada logicamente. Sua extensรฃo de nome de arquivo para cรณdigo de programaรงรฃo escrito รฉ .json. O tipo de mรญdia da Internet para JSON รฉ application/json e seu identificador de tipo uniforme รฉ public.json.
Por que usar JSON?
Aqui estรฃo os benefรญcios/prรณs importantes do uso de JSON:
- Fornece suporte para todos os navegadores
- Fรกcil de ler e escrever
- Sintaxe simples
- Vocรช pode analisar nativamente JavaScript usando a funรงรฃo eval()
- Fรกcil de criar e manipular
- Apoiado por todos os principais JavaEstruturas de script
- Suportado pela maioria das tecnologias de back-end
- JSON รฉ reconhecido nativamente por JavaScript
- Ele permite transmitir e serializar dados estruturados usando uma conexรฃo de rede.
- Vocรช pode usรก-lo com linguagens de programaรงรฃo modernas.
- JSON รฉ um texto que pode ser convertido em qualquer objeto de JavaCrie um script em JSON e envie esse JSON para o servidor.
Histรณria do JSON

Aqui estรฃo marcos importantes que formam a histรณria do JSON:
- Douglas Crockford especificou o formato JSON no inรญcio dos anos 2000.
- O site oficial foi lanรงado em 2002.
- Em dezembro de 2005, o Yahoo! passa a oferecer alguns de seus serviรงos web em JSON.
- JSON se tornou um padrรฃo internacional da ECMA em 2013.
- O padrรฃo de formato JSON mais atualizado foi publicado em 2017.
Recursos do JSON
Fรกcil de usar โ A API JSON oferece fachada de alto nรญvel, que ajuda a simplificar os casos de uso comumente usados.
Desempenho โ JSON รฉ bastante rรกpido porque consome muito menos espaรงo de memรณria, o que รฉ especialmente adequado para grรกficos ou sistemas de objetos grandes.
Ferramenta grรกtis โ A biblioteca JSON รฉ de cรณdigo aberto e de uso gratuito.
Nรฃo requer criaรงรฃo de mapeamento โ A API Jackson fornece mapeamento padrรฃo para muitos objetos a serem serializados.
Limpar JSON โ Cria resultados JSON limpos e compatรญveis que sรฃo fรกceis de ler.
Dependรชncia โ A biblioteca JSON nรฃo requer nenhuma outra biblioteca para processamento.
Regras para sintaxe JSON
As regras para sintaxe JSON sรฃo:
- Os dados devem estar em pares nome/valor
- Os dados devem ser separados por vรญrgulas
- Aparelhos encaracolados devem segurar objetos
- Colchetes contรชm matrizes
Tipos de dados em JSON
Os tipos de dados importantes usados โโโโem JSON sรฃo:
| Tipo de dados | Descriรงรฃo |
|---|---|
| Sessรฃo | Inclui nรบmero real, inteiro ou flutuante |
| Tanga | Consiste em qualquer texto ou Unicode entre aspas duplas com escape de barra invertida |
| Booleano | O tipo de dados Boolean representa valores True ou False |
| Nulo | O valor Nulo indica que a variรกvel associada nรฃo possui nenhum valor |
| objeto | ร uma coleรงรฃo de pares de valores-chave sempre separados por vรญrgula e entre colchetes. |
| Ordem | ร uma sequรชncia ordenada de valores separados. |
Sessรฃo
- O nรบmero รฉ um formato de ponto flutuante de precisรฃo dupla que depende do seu mรฉtodo de implementaรงรฃo.
- Em JSON vocรช nรฃo pode usar os formatos Hexadecimal e Octal.
A tabela a seguir exibe os tipos de nรบmeros:
| Formato | Descriรงรฃo |
|---|---|
| Nรบmero inteiro | Nรบmero 1-9 e 0. Nรบmeros positivos e negativos. |
| fraรงรฃo | Fraรงรตes como 3 |
| expoente | Expoente como e, e+ |
Sintaxe:
var json-object-name = { string : number_value,......}
Exemplo:
var obj = {salary: 2600}
Tanga
ร uma sรฉrie de caracteres Unicode entre aspas duplas e escape de barra invertida.
A tabela a seguir mostra vรกrios tipos de string:
| Formato | Descriรงรฃo |
|---|---|
| * | Use para digitaรงรฃo de aspas duplas |
| / | Use para solidus |
| \ | Use para solidus reverso |
| B | Use para adicionar backspace |
| F | Do feed |
| N | Para criar uma nova linha |
| R | Use para retorno de carro |
| T | Para mostrar a guia horizontal |
| U | dรญgitos hexadecimais |
Sintaxe:
var json-object-name = { string : "string value",โฆ..}
Exemplo:
var obj= {name: 'Andy'}
Booleano
Ele armazena apenas valores verdadeiros ou falsos.
Sintaxe:
var json-object-name = {string : true/false, โฆ..}
Exemplo:
var obj = {active: 'true'}
Ordem
- ร uma coleรงรฃo ordenada de valores.
- Vocรช deve usar uma matriz quando os nomes das chaves forem nรบmeros inteiros sequenciais.
- Deve ser colocado entre colchetes que devem ser separados por ',' (vรญrgula)
Sintaxe:
[value, .......]
Exemplo:
Mostrando um array armazenando vรกrios objetos:
{
"eBooks":[
{
"language":"Pascal",
"edition":"third"
},
{
"language":"Python",
"edition":"four"
},
{
"language":"SQL",
"edition":"second"
}
]
}
Objeto JSON
A Objeto JSON รฉ uma entidade em JSON que estรก entre chaves. ร escrito no conjunto nรฃo ordenado de pares de nome e valor em que o nome deve ser seguido por โ:โ (dois pontos), e os pares nome/valor precisam ser separados por โ,โ (vรญrgula). Pode ser usado quando os nomes das chaves sรฃo strings arbitrรกrias.
Sintaxe:
{ string : value, โฆ.. }
Exemplo:
{
"id": 110,
"language": "Python",
"price": 1900,
}
Espaรงo em branco
Vocรช pode inserir espaรงos em branco entre um par de tokens.
Exemplo:
Sintaxe:
{string:" ",โฆ.}
Exemplo:
var a = " Alex"; var b = "Steve";
Exemplo de JSON
O exemplo de cรณdigo fornecido define como usar JSON para armazenar informaรงรตes relacionadas a livros de programaรงรฃo juntamente com a ediรงรฃo e o nome do autor.
{
"book":[
{
"id":"444",
"language":"C",
"edition":"First",
"author":"Dennis Ritchie "
},
{
"id":"555",
"language":"C++",
"edition":"second",
"author":" Bjarne Stroustrup "
}
]
}
Vamos entender o formato JSON com outro exemplo de arquivo JSON. Aqui, JSON define o nome, sobrenome e id de um aluno.
{
"student": [
{
"id":"01",
"name": "Tom",
"lastname": "Price"
},
{
"id":"02",
"name": "Nick",
"lastname": "Thameson"
}
]
}
Aplicaรงรฃo de JSON
Aqui estรฃo algumas aplicaรงรตes comuns de JSON:
- Ajuda vocรช a transferir dados de um servidor
- O formato de arquivo JSON de amostra ajuda a transmitir e serializar todos os tipos de dados estruturados.
- Permite realizar chamadas de dados assรญncronas sem a necessidade de atualizar a pรกgina
- Ajuda vocรช a transmitir dados entre um servidor e aplicativos da web.
- ร amplamente utilizado para JavaAplicativo baseado em script, que inclui extensรฃo de navegador e sites.
- Vocรช pode transmitir dados entre o servidor e o aplicativo da web usando JSON.
- Podemos usar JSON com linguagens de programaรงรฃo modernas.
- ร usado para escrever JavaAplicativos baseados em script que incluem complementos de navegador.
- Os serviรงos da Web e APIs Restful usam o formato JSON para obter dados pรบblicos.
JSON versus XML
Aqui estรก a principal diferenรงa entre JSON e XML
| JSON | XML |
|---|---|
| O objeto JSON tem um tipo | XML os dados nรฃo tรชm tipo |
| Tipos JSON: string, nรบmero, array, booleano | Todos os dados XML devem ser string |
| Os dados sรฃo facilmente acessรญveis como objetos JSON | Os dados XML precisam ser analisados. |
| Os arquivos JSON sรฃo mais legรญveis por humanos. | Os arquivos XML sรฃo menos legรญveis por humanos. |
| JSON รฉ compatรญvel com a maioria dos navegadores. | A anรกlise XML entre navegadores pode ser complicada |
| JSON nรฃo possui recursos de exibiรงรฃo. | XML fornece a capacidade de exibir dados porque รฉ uma linguagem de marcaรงรฃo. |
| Recuperar valor รฉ fรกcil | Recuperar valor รฉ difรญcil |
| Suportado por muitos kits de ferramentas Ajax | Nรฃo totalmente suportado pelo kit de ferramentas Ajax |
| Uma maneira totalmente automatizada de desserializar/serializar JavaRoteiro. | Os desenvolvedores precisam escrever JavaCรณdigo de script para serializar/desserializar de XML |
| Suporte nativo para objeto. | O objeto deve ser expresso por convenรงรตes โ principalmente pelo uso incorreto de atributos e elementos. |
Exemplo JSON
Abaixo estรก um exemplo JSON simples:
{
"student": [
{
"id":"01",
"name": "Tom",
"lastname": "Price"
},
{
"id":"02",
"name": "Nick",
"lastname": "Thameson"
}
]
}
Exemplo de XML
<?xml version="1.0" encoding="UTF-8" ?> <root> <student> <id>01</id> <name>Tom</name> <lastname>Price</lastname> </student> <student> <id>02</id> <name>Nick</name> <lastname>Thameson</lastname> </student> </root>
O que JSON nรฃo รฉ?
- O arquivo de dados JSON de amostra nรฃo รฉ um formato de documento.
- Nรฃo รฉ uma linguagem de marcaรงรฃo.
- JSON nรฃo fornece um formato de serializaรงรฃo geral.
- Nรฃo sรฃo estruturas recorrentes ou cรญclicas.
- Tambรฉm nรฃo รฉ uma estrutura invisรญvel.
Desvantagens do JSON
Aqui estรฃo algumas vantagens do JSON:
- Nรฃo hรก suporte para namespace, portanto, pouca extensibilidade
- Limitada ferramentas de desenvolvimento ajuda
- Nรฃo hรก suporte para definiรงรฃo formal de gramรกtica
Ferramentas JSON populares (complementos)
Aqui estรฃo ferramentas JSON importantes:
JSONLint:
JSONLint รฉ um projeto de cรณdigo aberto usado como validador e reformatador para JSON. ร um formato leve de intercรขmbio de dados. Copie e cole, digite diretamente ou insira o URL na ferramenta validadora JSON para validar seu cรณdigo JSON.
link: https://jsonlint.com
Editor JSON on-line:
JSON Editor Online รฉ uma ferramenta รบtil baseada na web. Ele permite editar, visualizar e formatar JSON. Ele exibe seus dados lado a lado de forma clara e editรกvel software editor de cรณdigo.
link: https://jsoneditoronline.org/
Ferramenta Minificador JSON:
ร uma ferramenta que ajuda a remover espaรงos em branco e fornece um cรณdigo JSON que ocupa menos espaรงo.
link: https://www.browserling.com/tools/json-minify
Conversor JSON para XML:
O conversor JSON para XML รฉ uma ferramenta simples e eficaz que ajuda vocรช a converter seu cรณdigo JSON.
link: https://codebeautify.org/jsontoxml
Formatador JSON:
O formatador JSON ajuda vocรช a resolver o problema formatando os dados JSON para que sejam fรกceis de ler e depurar por um ser humano.
link:https://jsonformatter.curiousconcept.com/
Resumo
- O mรฉtodo JSON รฉ usado para armazenar informaรงรตes de forma organizada e de fรกcil acesso.
- JSON significa JavaNotaรงรฃo de Objeto de Script.
- JSON Fornece suporte para todos os navegadores oferecidos em vรกrios idiomas.
- Douglas Crockford especificou o formato JSON no inรญcio dos anos 2000
- A API JSON oferece fachada de alto nรญvel, que ajuda a simplificar os casos de uso comumente usados
- As regras importantes para escrever o sistema JSON รฉ que os dados devem ser escritos em pares nome/valor.
- Nรบmero, String, Booleano, Nulo, Objeto e Matriz sรฃo tipos de dados importantes usados โโem JSON.
- Ajuda vocรช a transferir dados de um servidor.
- O objeto JSON tem um tipo, enquanto os dados XML nรฃo tรชm tipo
- JSON nรฃo รฉ um formato de documento
- Nรฃo hรก suporte para namespace, portanto, pouca extensibilidade
- JSONLint รฉ um projeto de cรณdigo aberto usado como validador e reformatador para JSON.
