A sintaxe JSON é um subconjunto da sintaxe JavaScript.
A sintaxe JSON é derivada da sintaxe de notação de objeto JavaScript:
Os dados estão em pares nome/valor
Os dados são separados por vírgulas
Aparelhos encaracolados seguram objetos
Colchetes contêm matrizes
Os dados JSON são gravados como pares nome/valor (também conhecidos como pares chave/valor).
Um par nome/valor consiste em um nome de campo (entre aspas duplas), seguido por dois pontos, seguido por um valor:
"name":"John"
Os nomes JSON requerem aspas duplas.
O formato JSON é quase idêntico aos objetos JavaScript.
Em JSON, chaves devem ser strings, escritas entre aspas duplas:
{"name":"John"}
Em JavaScript, as chaves podem ser strings, números ou nomes de identificadores:
{name:"John"}
Em JSON, os valores devem ser um dos seguintes tipos de dados:
uma linha
um número
um objeto
uma matriz
um booleano
nulo
Em JavaScript os valores podem ser todos os itens acima, além de qualquer outro JavaScript válido expressão, incluindo:
uma função
um encontro
indefinido
Em JSON, valores de string devem ser escritos entre aspas duplas:
{"name":"John"}
Em JavaScript, você pode escrever valores de string com aspas duplas ou simples:
{name:'John'}
Como a sintaxe JSON é derivada da notação de objeto JavaScript, muito pouco extra é necessário software para trabalhar com JSON em JavaScript.
Com JavaScript você pode criar um objeto e atribuir dados a isso, assim:
person = {name:"John", age:31, city:"New York"};
Você pode acessar um objeto JavaScript como este:
// returns John
person.name;
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>Access a JavaScript object</h2>
<p id="demo"></p>
<script>
const myObj = {name:"John", age:30, city:"New York"};
document.getElementById("demo").innerHTML = myObj.name;
</script>
</body>
</html>
Também pode ser acessado assim:
// returns John
person["name"];
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>Access a JavaScript object</h2>
<p id="demo"></p>
<script>
const myObj = {name:"John", age:30, city:"New York"};
document.getElementById("demo").innerHTML = myObj["name"];
</script>
</body>
</html>
Os dados podem ser modificados assim:
person.name = "Gilbert";
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>Modify a JavaScript Object</h2>
<p id="demo"></p>
<script>
const myObj = {name:"John", age:30, city:"New York" };
myObj.name = "Gilbert";
document.getElementById("demo").innerHTML = myObj.name;
</script>
</body>
</html>
Também pode ser modificado assim:
person["name"] = "Gilbert";
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>Modify a JavaScript Object</h2>
<p id="demo"></p>
<script>
const myObj = {name:"John", age:30, city:"New York"};
myObj["name"] = "Gilbert";
document.getElementById("demo").innerHTML = myObj.name;
</script>
</body>
</html>
Você aprenderá como converter objetos JavaScript em JSON posteriormente neste tutorial.
Da mesma forma que objetos JavaScript podem ser escritos como JSON, arrays JavaScript podem também ser escrito como JSON.
Você aprenderá mais sobre objetos e arrays posteriormente neste tutorial.
O tipo de arquivo para arquivos JSON é ".json"
O tipo MIME para texto JSON é "application/json"