JS-zelfstudie

JS HOME JS Introductie JS Waarheen? JS-uitgang JS-verklaringen JS-syntaxis JS-opmerkingen JS-variabelen JS Let JS Const JS-operators JS Rekenen JS-opdracht JS-gegevenstypen JS-functies JS-objecten JS-evenementen JS-snaren JS String-methoden JS String zoeken JS String-sjablonen JS-nummers JS-nummermethoden JS-arrays JS-array-methoden JS-array sorteren JS-array-iteratie JS Array Const JS-datums JS-datumnotaties JS Datum Ophaalmethoden Methoden voor het instellen van JS-datum JS Math JS Willekeurig JS Booleans JS-vergelijkingen JS-voorwaarden JS-schakelaar JS Loop For JS-lus voor binnen JS Loop For Of JS-lus terwijl JS Break JS-iteraties JS-sets JS-kaarten JS Typeof JS Type conversie JS Bitwise JS RegExp JS-fouten JS-bereik JS Hijsen JS strikte modus JS dit trefwoord JS-pijlfunctie JS-lessen JS JSON JS-foutopsporing JS-stijlgids JS-best practices JS-fouten JS-prestaties JS Gereserveerde Woorden

JS-versies

JS-versies JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Edge JS-geschiedenis

JS-objecten

Objectdefinities Objecteigenschappen Objectmethoden Objectweergave Objectaccessoires Objectconstructeurs Objectprototypes Object-Iterables Objectsets Objectkaarten Objectreferentie

JS-functies

Functiedefinities Functieparameters: Functie-aanroep Functie-oproep: Functie Toepassen Functie Sluitingen

JS-lessen

Klas Intro Klasse Overerving Klasse Statisch

JS Asynchrone

JS-callbacks JS asynchroon JS belooft JS Async/Wachten

JS HTML DOM

DOM Intro DOM-methoden DOM-document DOM-elementen DOM HTML DOM-formulieren DOM-CSS DOM-animaties DOM-evenementen DOM-gebeurtenisluisteraar DOM-navigatie DOM-knooppunten DOM-collecties DOM-knooppuntlijsten

JS-browserstuklijst

JS-venster JS-scherm JS-locatie JS-geschiedenis JS-navigator JS pop-upwaarschuwing JS-timing JS-koekjes

JS Web API's

Introductie web-API Web Forms API Webgeschiedenis-API Webopslag-API Web Worker-API Web Fetch-API Webgeolocatie-API

JS AJAX

Ajax-intro AJAX XMLHttp Ajax-verzoek Ajax-reactie AJAX XML-bestand AJAX PHP Ajax ASP AJAX-database AJAX-toepassingen Ajax-voorbeelden

JS JSON

JSON-intro JSON-syntaxis JSON versus XML JSON-gegevenstypen JSON ontleden JSON Stringify JSON-objecten JSON-arrays JSON-server JSON PHP JSON HTML JSON JSONP

JS versus jQuery

jQuery-kiezers jQuery HTML jQuery CSS jQuery DOM

JS-graphics

JS-graphics JS Canvas JS Plotly JS Chart.js JS Google-kaart JS D3.js

JS-voorbeelden

JS-voorbeelden JS HTML DOM JS HTML-invoer JS HTML-objecten JS HTML-evenementen JS-browser JS-editor JS-oefeningen JS-quiz JS-certificaat

JS-referenties

JavaScript-objecten HTML DOM-objecten


JavaScript -JSON


JSON is een formaat voor het opslaan en transporteren van gegevens.

JSON wordt vaak gebruikt wanneer gegevens van een server naar een webpagina worden verzonden.


Wat is JSON?

  • JSON staat voor Java S cript O bject N otering
  • JSON is een lichtgewicht formaat voor gegevensuitwisseling
  • JSON is taalonafhankelijk *
  • JSON is "zelfbeschrijvend" en gemakkelijk te begrijpen

* De JSON-syntaxis is afgeleid van de JavaScript-syntaxis voor objectnotatie, maar de JSON-indeling is alleen tekst. Code voor het lezen en genereren van JSON-gegevens kan in elke programmeertaal worden geschreven.


JSON-voorbeeld

Deze JSON-syntaxis definieert een werknemersobject: een array van 3 werknemersrecords (objecten):

JSON-voorbeeld

{
"employees":[
  {"firstName":"John", "lastName":"Doe"},
  {"firstName":"Anna", "lastName":"Smith"},
  {"firstName":"Peter", "lastName":"Jones"}
]
}

Het JSON-formaat evalueert naar JavaScript-objecten

Het JSON-formaat is syntactisch identiek aan de code voor het maken van JavaScript-objecten.

Vanwege deze gelijkenis kan een JavaScript-programma eenvoudig JSON-gegevens converteren naar native JavaScript-objecten.


JSON-syntaxisregels

  • Gegevens zijn in naam/waarde-paren
  • Gegevens worden gescheiden door komma's
  • Krullende accolades houden objecten vast
  • Vierkante haken bevatten arrays


JSON-gegevens - een naam en een waarde

JSON-gegevens worden geschreven als naam/waarde-paren, net als JavaScript-objecteigenschappen.

Een naam/waarde-paar bestaat uit een veldnaam (tussen dubbele aanhalingstekens), gevolgd door een dubbele punt, gevolgd door een waarde:

"firstName":"John"

JSON-namen vereisen dubbele aanhalingstekens. JavaScript-namen niet.


JSON-objecten

JSON-objecten worden tussen accolades geschreven.

Net als in JavaScript kunnen objecten meerdere naam/waarde-paren bevatten:

{"firstName":"John", "lastName":"Doe"}

JSON-arrays

JSON-arrays worden tussen vierkante haken geschreven.

Net als in JavaScript kan een array objecten bevatten:

"employees":[
  {"firstName":"John", "lastName":"Doe"},
  {"firstName":"Anna", "lastName":"Smith"},
  {"firstName":"Peter", "lastName":"Jones"}
]

In het bovenstaande voorbeeld is het object "employees" een array. Het bevat drie objecten.

Elk object is een record van een persoon (met een voornaam en een achternaam).


Een JSON-tekst converteren naar een JavaScript-object

Een veelgebruikt gebruik van JSON is om gegevens van een webserver te lezen en de gegevens op een webpagina weer te geven.

Voor de eenvoud kan dit worden gedemonstreerd met een string als invoer.

Maak eerst een JavaScript-tekenreeks met de JSON-syntaxis:

let text = '{ "employees" : [' +
'{ "firstName":"John" , "lastName":"Doe" },' +
'{ "firstName":"Anna" , "lastName":"Smith" },' +
'{ "firstName":"Peter" , "lastName":"Jones" } ]}';

Gebruik vervolgens de ingebouwde JavaScript-functie JSON.parse()om de tekenreeks om te zetten in een JavaScript-object:

const obj = JSON.parse(text);

Gebruik ten slotte het nieuwe JavaScript-object op uw pagina:

Voorbeeld

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
obj.employees[1].firstName + " " + obj.employees[1].lastName;
</script>

U kunt meer lezen over JSON in onze JSON-tutorial .