From 39f2114f9797eb51994966c6bb8ff1814c9a4da8 Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 12:36:08 +0100 Subject: unslug fr: move --- .../reference/global_objects/nan/index.html | 92 ++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 files/fr/web/javascript/reference/global_objects/nan/index.html (limited to 'files/fr/web/javascript/reference/global_objects/nan') diff --git a/files/fr/web/javascript/reference/global_objects/nan/index.html b/files/fr/web/javascript/reference/global_objects/nan/index.html new file mode 100644 index 0000000000..e8b97ac8ba --- /dev/null +++ b/files/fr/web/javascript/reference/global_objects/nan/index.html @@ -0,0 +1,92 @@ +--- +title: NaN +slug: Web/JavaScript/Reference/Objets_globaux/NaN +tags: + - JavaScript + - Propriété + - Reference +translation_of: Web/JavaScript/Reference/Global_Objects/NaN +--- +
{{jsSidebar("Objects")}}
+ +

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).

+ +

{{js_property_attributes(0,0,0)}}

+ +
{{EmbedInteractiveExample("pages/js/globalprops-nan.html")}}
+ + + +

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 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 {{jsxref("Number.isNaN()")}} ou {{jsxref("isNaN", "isNaN()")}} à la place.

+ +
NaN === NaN;        // false
+Number.NaN === NaN; // false
+isNaN(NaN);         // true
+isNaN(Number.NaN);  // true
+
+ +

La différence entre isNaN() et Number.isNaN() est la façon dont les valeurs sont, ou non, converties en nombre avant de vérifier si la valeur est NaN : isNaN() convertira l'argument en nombre avant de vérifier alors que Number.isNaN() ne renverra true que si l'opérande vaut NaN.

+ +
isNaN('coucou monde');        // renvoie true
+Number.isNaN('coucou monde'); // renvoie false
+ +

Spécifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpécificationÉtatCommentaires
{{SpecName('ES1')}}{{Spec2('ES1')}}Définition initiale. Implémentée avec JavaScript 1.3
{{SpecName('ES5.1', '#sec-15.1.1.1', 'NaN')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-value-properties-of-the-global-object-nan', 'NaN')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-value-properties-of-the-global-object-nan', 'NaN')}}{{Spec2('ESDraft')}} 
+ +

Compatibilité des navigateurs

+ + + +

{{Compat("javascript.builtins.NaN")}}

+ +

Voir aussi

+ + -- cgit v1.2.3-54-g00ecf