NaN
Staat voor "Not a Number". NaN is een term die in de wiskunde en informatica wordt gebruikt om een niet-numerieke waarde te beschrijven. Het kan ook een tijdelijke aanduiding zijn voor een verwacht numeriek resultaat dat niet als een getal met drijvende komma kan worden gedefinieerd.
Er zijn twee belangrijke manieren waarop NaN kan worden gegenereerd: 1) door een wiskundige berekening en 2) door niet-numerieke invoer. De volgende wiskundige berekeningen leveren NaN op omdat het resultaat niet is gedefinieerd:
- 0 ÷ 0
- 0 x ∞
- ∞ ÷ ∞
Wanneer een berekening een teken, tekenreeks of andere niet-numerieke waarde bevat, kan het resultaat ook NaN zijn. 20 x "horse" levert bijvoorbeeld geen numeriek resultaat op, omdat 20 een geheel getal is en "horse" een tekenreeks. Een functie kan NaN als resultaat retourneren bij ongeldige invoer, wat een beter alternatief is dan een crash van een programma.
Verschillende programmeertalen gaan op verschillende manieren om met NaN-waarden. In JavaScript is NaN bijvoorbeeld een eigenschap van een globaal object (oftewel Number.NaN). JavaScript biedt een functie isNan() om te controleren of een waarde NaN is. PHP gebruikt hiervoor de functie is_nan(). Beide retourneren een booleaanse waarde van true of false.
Test je kennis