JavaScript Object Notation

Leerdoelen

  • Leren wat JSON is

Wat is JSON?

  • Is een data formaat (zoals HTML, XML, csv, etc.)
  • Gestructureerde data met META-data
  • Is voor gegevensuitwisseling
  • Menselijk leesbaar
  • Gemakkelijk te parsen door machines
  • Veel gebruikt in webapplicaties en API's

vergelijking

  • HTML:
    <p>Voornaam: John</p>
    • Geen waarde, is platte tekst
  • XML:
    <Voornaam>John</Voornaam>
    • Lijkt op HTML (start en end-tags)
    • Data met waarde, we weten wat voor data John is
  • JSON:
    { "Voornaam": "John" }
    • Data met waarde, we weten wat voor data John is
    • Makkelijk leesbaar voor mensen
    • Compacter dan XML

Data met waarde

  • Data is in key/value paren
  • Data is gescheiden door komma's
  • Keys zijn strings!
    • Dus in dubbele quotes
    {
      "naam": "John",
      "leeftijd": 30,
      "auto": null,
      “isStudent”: false,
      "vaardigheden": ["Python", "JavaScript", "Linux"]
    }

Data-types (primitives)

  • String: double quotes
    { "name" : "John" }
  • Getal (integer/float): geen quotes
    { "age" : 30 }
  • Boolean: geen quotes
    { "employee" : true }
  • Null: geen quotes
    { "middlename" : null }

Data-types (Structures)

  • Array:
    • Geordende lijsten van waarden
    • Geschreven tussen [ ]
{
    "employees" :
        [
            "John",
            "Anna",
            "Peter"
        ]
}
  • Object:
    • Verzameling van key-value pairs
    • Geschreven tussen { }
{
    "employee" :
        {
            "name": "John",
            "age": 30,
            "city": "Haarlem"
        }
}

Waarom JSON?

Samenvatting

  • JSON is gestructureerde data
  • JSON data is opgebouwd uit key/value pairs
  • JSON keys zijn strings
  • JSON values kunnen strings, numbers, booleans en de null zijn
  • JSON kent arrays en objects om data te structureren
  • Populair bij webontwikkeling, mobiele apps, en data-analyse