JSON Àr ett av de mest populÀra formaten för att representera data som text. JSON anvÀnds till exempel för att överföra data mellan frontend och backend, i konfigurationsfiler, i spel, i textredigerare och i mÄnga andra omrÄden. Som programmerare kommer du definitivt att stöta pÄ JSON.
Introduktion till syntaxen
LÄt oss lista de datatyper som Àr tillgÀngliga i JSON:
-
StrÀngar Àr alla tecken som omges av dubbla citattecken:
"kwerty""125 + 42""G"Specialtecken undviks med ett snedstreck:
"första raden\nandra raden""Han sa,"Hej!"" -
Tal, inklusive negativa och reella tal. Inga citat:
18 -333 17,88 1,2e6 -
De booleska vÀrdena Àr sant / falskt (inga citattecken).
-
null Àr standardvÀrdet för att representera "ingenting". Inga citattecken anvÀnds hÀr.
-
Array â Denna typ kan innehĂ„lla vĂ€rden av alla andra typer. Den Ă€r inslagen i hakparenteser. Dess element Ă€r separerade med kommatecken:
["Kod", "Gym", "CodeGym", "ÂŻ\_(ă)_/ÂŻ"][true, true, false, true, false, false, false, false, false][[1, 2], [3, 999, 4, -5], [77]]Det sista exemplet Ă€r en array av arrayer
-
Objekt â Denna komplexa typ Ă€r den vanligaste. Den innehĂ„ller nyckel-vĂ€rdepar, dĂ€r vĂ€rdet kan vara vilken som helst av de typer som anges ovan, sĂ„vĂ€l som andra objekt. Den Ă€r inlindad i lockiga hĂ€ngslen, och paren Ă€r Ă„tskilda med kommatecken:
{ "name": "Dale", "age": 7 }
Representerar ett Java-objekt som JSON
LĂ„t oss nu ta ett Java-objekt och se hur det ser ut som JSON.
LÄt oss först definiera en klass:
public class Human {
String name;
boolean male;
int age;
Set<Human> parents;
public Human(String name, boolean male, int age) {
this.name = name;
this.male = male;
this.age = age;
}
}
LÄt oss nu skapa vÄrt objekt:
Human father = new Human("Peter", true, 31);
Human mother = new Human("Mary", false, 28);
mother.parents = new HashSet<>();
Human son = new Human("Paul", true, 7);
son.parents = Set.of(father, mother);
Och lÄt oss nu försöka representerasonobjekt sÄ exakt som möjligt i JSON-format:
"name" : "Paul",
"male" : true,
"age" : 7,
"parents" : [
{
"name" : "Peter",
"male" : true,
"age" : 31,
"parents" : null
},
{
"name" : "Maria",
"male" : false,
"age" : 28,
"parents" : null
}
]
}
Kommentarer i JSON
Allt hÀr Àr exakt detsamma som i Java. Det finns tvÄ typer av kommentarer: // och /*...*/. Jag hoppas att jag inte behöver pÄminna dig om hur de skiljer sig Ät?
GO TO FULL VERSION