Zoals we hebben gezien in de sectie met variabelen, kunnen we elk primitief of niet-primitief type waarde aan een variabele toewijzen. JavaScript bevat twee extra primitieve typewaarden – null en ongedefinieerd, die kunnen worden toegewezen aan een variabele met een speciale betekenis.
null
U kunt null toewijzen aan een variabele om aan te geven dat die variabele momenteel geen waarde heeft, maar later wel. Een nul betekent het ontbreken van een waarde.
In het bovenstaande voorbeeld wordt null toegewezen aan een variabele myVar. Het betekent dat we een variabele hebben gedefinieerd maar nog geen waarde hebben toegewezen, dus waarde is afwezigheid.
Als u het DOM-element probeert te vinden met bijvoorbeeld document.getElelementByID, en als het element wordt gevonden, wordt null geretourneerd. Het wordt dus aanbevolen om op null te controleren voordat u iets met dat element doet.
Een null-waarde evalueert naar false in voorwaardelijke expressie. U hoeft dus geen vergelijkingsoperatoren zoals === of! == te gebruiken om te controleren op null-waarden.
undefined
Undefined is ook een primitieve waarde in JavaScript. Een variabele of een object heeft een ongedefinieerde waarde als er geen waarde is toegewezen voordat u deze gebruikt. U kunt dus zeggen dat ongedefinieerd gebrek aan waarde of onbekende waarde betekent.
In het bovenstaande voorbeeld hebben we geen waarde toegewezen aan een variabele met de naam “myVar”. Een variabele “myVar” heeft geen waarde. Het is dus niet gedefinieerd.
Jij krijgt een ongedefinieerde waarde als u een niet-bestaande eigenschap of methode van een object aanroept.
In het bovenstaande voorbeeld retourneert een functie Sum geen resultaat, maar we proberen toch de resulterende waarde toe te wijzen aan een variabele. In dit geval is het resultaat dus ongedefinieerd.
Als u minder argumenten doorgeeft in de functieaanroep, heeft die parameter een ongedefinieerde waarde.
Een ongedefinieerd evalueert naar false wanneer het in voorwaardelijke expressie wordt gebruikt.
null en ongedefinieerd is een van de belangrijkste redenen om een runtime-fout in de JavaScript-toepassing te produceren. Dit gebeurt als u de waarde van onbekende retourvariabelen niet controleert voordat u deze gebruikt. Als u niet zeker weet of een variabele altijd een bepaalde waarde zal hebben, kunt u het beste de waarde van variabelen controleren op null of ongedefinieerd voordat u ze gebruikt.
- null en ongedefinieerd zijn primitieve waarden in JavaScript.
- Een null-waarde betekent afwezigheid.
- Een ongedefinieerde waarde betekent gebrek aan waarde.
- Een null- of ongedefinieerde waarde evalueert naar false in voorwaardelijke expressie.