Objecten - syntax
Declaratieve vorm
De declaratieve vorm ziet er zo uit:
var myObj = { key : value // ... };
We beginnen met een eenvoudig voorbeeld:
var persoon = { voornaam: 'Jef', familienaam: 'Inghelbrecht', straat: 'Braziliëstraat 38', stad: 'Antwerpen', postcode: '2000', geslacht: 'man' };
Je ziet dat:
- de naam van de variabele die naar het object verwijst is persoon;
- in plaats van vierkante haken, die je met arrays gebruikt, gebruik je accolades;
- je onderscheidt de elementen, genaamd eigenschappen, in het object met komma's;
- om een waarde aan een sleutel toe te kennen gebruik je een : en geen =;
De namen van de eigenschappen - van nu af aan spreken we niet meer van sleutels maar van eigenschappen - kan je tussen enkele of dubbele aanhalingstekens plaatsen:
var persoon = { voornaam: 'Jef', 'familienaam': 'Inghelbrecht', "straat": 'Braziliëstraat 38', };
Je plaatst eigenschappen tussen aanhalingstekens enkel en alleen als:
- de naam van de eigenschap is een gereserveerd woord in JavaScript;
- als er een spatie zit in de naam van de eigenschap;
- als de naam van de eigenschap begint met een getal;
In alle andere gevallen is dat alleen maar meer typenwerk.
Geconstrueerde vorm
De geconstrueerde vorm ziet er zo uit:
var myObj = new Object (); myObj.key = value;
De geconstrueerde vorm en de letterlijke vorm maken precies hetzelfde soort object. Het enige verschil is dat je één of meerdere sleutel/waarde paren kan toevoegen aan de letterlijke declaratie, terwijl bij geconstrueerde vorm, je de eigenschappen één voor één op een rijtje aan het object moet toevoegen.
Het is zeer ongewoon om de "geconstrueerde vorm" te gebruiken voor het maken van objecten. Meestal wordt de letterlijke syntaxis gebruikt. Hetzelfde geldt voor de meeste van de ingebouwde objecten (later toegelicht).