mozilla
Vos résultats de recherche

    NaN

    La propriété globale NaN est une valeur utilisée pour représenter une quantité qui n'est pas un nombre (Not a Number en anglais).

    Attributs de NaN
    Écrivable Non
    Énumérable Non
    Configurable Non

    Syntaxe

    NaN

    Description

    NaN est une propriété de l'objet global, c'est-à-dire qu'elle est accessible globalement.

    La valeur initiale de NaN est Number.NaN. Dans les navigateurs modernes, NaN est une propriété non-configurable et non-écrivable. Si ce n'est pas le cas, il faut éviter de la modifier et de l'écraser.

    Il est rare d'utiliser expressément NaN dans un programme. On récupère généralement NaN comme le résultat d'une fonction mathématique (une de celles liées à Math) qui échoue (Math.sqrt(-1)) où quand une fonction qui tente d'interpréter un nombre échoue (parseInt("blabla")).

    Tester NaN

    Les opérateurs d'égalité (== et ===) ne peuvent pas être utilisé pour tester une valeur par rapport à NaN. Il faut utiliser Number.isNaN() ou isNaN() à la place. En effet, si on utilise ==, !=, === et !==, NaN ne sera pas considéré comme égal à lui-même en raison de la norme IEEE 754.

    NaN === NaN;        // false
    Number.NaN === NaN; // false
    isNaN(NaN);         // true
    isNaN(Number.NaN);  // true
    
    function valueIsNaN(v) {
      return v!== v;
    }
    valueIsNaN(1);          // false
    valueIsNaN(NaN);        // true
    valueIsNaN(Number.NaN); // true
    
    

    Spécifications

    Spécification Statut Commentaires
    Première édition d'ECMAScript. Standard Définition initiale. Implémentée avec JavaScript 1.3
    ECMAScript 5.1 (ECMA-262)
    La définition de 'NaN' dans cette spécification.
    Standard  
    ECMAScript 6 (ECMA-262)
    La définition de 'NaN' dans cette spécification.
    En cours de validation comme recommandation  

    Compatibilité des navigateurs

    Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari
    Support simple (Oui) (Oui) (Oui) (Oui) (Oui)
    Fonctionnalité Android Chrome pour Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
    Support simple (Oui) (Oui) (Oui) (Oui) (Oui) (Oui)

    Voir aussi

    Étiquettes et contributeurs liés au document

    Contributors to this page: tregagnon, Mgjbot, SphinxKnight, Jeremie, BenoitL, teoli
    Dernière mise à jour par : SphinxKnight,
    Masquer la barre latérale