JSON: Wat het is en hoe je het kunt gebruiken


JSON-logo

JSON staat voor JavaScript Oject Notation. En dat is precies wat het is: Een op JavaScript gebaseerde manier om gegevens weer te geven en op te slaan.
Deze notatie is bedacht door Douglas Crockford. Nu al steekt het XML als taal om data uit te wisselen naar de kroon. Dat komt vooral omdat het eenvoudig te begrijpen is.
Daarnaast zijn er, naast JavaScript, omzetters beschikbaar voor veel programmeertalen. Denk hierbij aan web-talen zoals ASP, ASP.NET, VB.NET, C# en PHP, maar ook aan "algemene" programmeertalen zoals C++, Delphi, Lisp en Visual Basic. Ze zijn er ook voor SQL, wat het werken met databases gemakkelijker maakt.
Het gebruik van JSON beperkt zich dus niet tot het web.

De gegevens worden in JSON opgeslagen als data-paren, te weten variabele:waarde. De naam en de waarde binnen een data-paar worden gescheiden door een dubbele punt.
Dit alles wordt achter elkaar in een string gezet, gescheiden door komma's.

Voorbeeld: Het object:

var gegevens = new Object();
  gegevens.Voornaam = "Jan";
  gegevens.Achternaam = "Klasen";
  gegevens.Adres = "Poppenkastweg 21";
  gegevens.Postcode = "9876 JK";
  gegevens.Woonplaats = "Sprookjesdorp";

wordt in JSON geschreven als:

var gegevens = {
  "Voornaam":"Jan",
  "Achternaam":"Klasen",
  "Adres":"Poppenkastweg 21",
  "Postcode":"9876 JK",
  "Woonplaats":"Sprookjesdorp"
};

Je kunt in JSON bijna alle soorten gegevens kwijt, dus ook arrays, objecten en hexadecimale getallen. Het is echter niet mogelijk om methodes van een object met JSON weer te geven. Het is dus beperkt tot data.

De volledige taalbeschrijving vind je op JSON.org, ook in het Nederlands.

JSON is in principe in elke moderne browser beschikbaar via een API, omdat het onderdeel is van de JavaScript standaarden. Je hoeft dus geen apart JavaScript-bestand in je code te zetten om het te gebruiken.
Helaas is de praktijk iets minder mooi. Met name in Internet Explorer kan het fout gaan. Daarom is het beter om toch een (klein) JavaScript in je code op te nemen. Dat zorgt ervoor dat je toch met JSON kunt werken als de JSON API niet beschikbaar is. Het originele script staat op de site van Douglas Crockford. De zip-file bevat een aantal bestanden, waarvan JSON2.JS de beste keuze is.
Je kunt ook een geminimaliseerde versie downloaden vanaf deze site. Daar is alle opmaak en commentaar uit verwijderd.

De JSON API is in feite een object, met maar twee methodes:

Als voorbeeld gebruiken we het object gegevens dat we hiervoor hebben getoond. Als je op de knop klikt zie je een alert met de JSON-notatie van het object gegevens, aangemaakt met JSON.stringify(). Er verschijnt een tweede knop, waarmee je de JSON-string met JSON.parse()kunt laten terugvertalen naar een object.
De alert geeft aan dat het een object van het type Object is.

Waar gebruik je het voor?
Toegespitst op websites:

 
terug

html-329; Laatste wijziging: 25 oktober 2013