Vérifier NaN (« pas un nombre ») est aussi simple que vérifier l’auto-égalité dans JavaScript.
Dr Derek Austin 🥳
Suivre
15 sept. 2019 · 4 min de lecture
En JavaScript, la valeur spéciale NaN (signifiant » pas un nombre « ) est utilisée pour représenter le résultat d’un calcul mathématique qui ne peut pas être représenté par un nombre significatif. – Joshua Clanton sur A Drip of JavaScript
La valeur spéciale NaN apparaît dans JavaScript lorsque Math les fonctions échouent (Math.sqrt(-37)) ou lorsqu’une fonction essayant d’analyser un nombre échoue (parseInt("No integers here")).
NaN empoisonne alors toutes les autres fonctions mathématiques, conduisant à toutes les autres opérations mathématiques résultant en NaN.
Notez qu’en JavaScript, la division par 0 renvoie Infinity, pas NaN:
Ce résultat est dû à la façon dont flottant-poi nt est défini, plus généralement que juste Javascript. Pourquoi? En gros, parce que 1/0 est la limite de 1 / x lorsque x s’approche de zéro. Et 0/0 n’a aucune interprétation raisonnable du tout, d’où NaN.
Qu’est-ce que NaN de toute façon?
NaN est une propriété de l’objet global. La valeur initiale de NaN est Not-A-Number – la même que la valeur de Number.NaN. – MDN Docs
Vérifier NaN est plus difficile qu’il n’y paraît
Malheureusement, il y a deux problèmes à essayer de vérifier NaN:
Le typeof NaN est un » nombre «
NaN est différent de toutes les autres valeurs en JavaScript
Consultez cet exemple de code:
Alors, comment vérifier si nous avons une valeur NaN qui empoisonnera les mathématiques?