From bf8e099b9c8b3c60d60b3712b4fc97b052c39887 Mon Sep 17 00:00:00 2001 From: julieng Date: Tue, 3 Aug 2021 08:03:23 +0200 Subject: convert content to md --- .../reference/global_objects/number/isnan/index.md | 105 +++++++++------------ 1 file changed, 45 insertions(+), 60 deletions(-) (limited to 'files/fr/web/javascript/reference/global_objects/number/isnan/index.md') diff --git a/files/fr/web/javascript/reference/global_objects/number/isnan/index.md b/files/fr/web/javascript/reference/global_objects/number/isnan/index.md index 2b7f565807..fef4caa264 100644 --- a/files/fr/web/javascript/reference/global_objects/number/isnan/index.md +++ b/files/fr/web/javascript/reference/global_objects/number/isnan/index.md @@ -10,36 +10,35 @@ tags: translation_of: Web/JavaScript/Reference/Global_Objects/Number/isNaN original_slug: Web/JavaScript/Reference/Objets_globaux/Number/isNaN --- -
{{JSRef}}
+{{JSRef}} -

La méthode Number.isNaN() permet de déterminer si la valeur passée en argument est {{jsxref("NaN")}}, avec un type {{jsxref("Number")}}. Cette version est plus robuste que la méthode de l'objet global {{jsxref("isNaN")}}.

+La méthode **`Number.isNaN()`** permet de déterminer si la valeur passée en argument est {{jsxref("NaN")}}, avec un type {{jsxref("Number")}}. Cette version est plus robuste que la méthode de l'objet global {{jsxref("isNaN")}}. -
{{EmbedInteractiveExample("pages/js/number-isnan.html", "taller")}}
+{{EmbedInteractiveExample("pages/js/number-isnan.html", "taller")}} -

Syntaxe

+## Syntaxe -
Number.isNaN(valeurÀTester)
+ Number.isNaN(valeurÀTester) -

Paramètres

+### Paramètres -
-
valeurÀTester
-
La valeur qu'on souhaite comparer à {{jsxref("NaN")}}.
-
+- `valeurÀTester` + - : La valeur qu'on souhaite comparer à {{jsxref("NaN")}}. -

Valeur de retour

+### Valeur de retour -

Un booléen qui indique si la valeur fournie en argument est {{jsxref("NaN")}}.

+Un booléen qui indique si la valeur fournie en argument est {{jsxref("NaN")}}. -

Description

+## Description -

Les deux opérateurs d'égalité, {{jsxref("Opérateurs/Opérateurs_de_comparaison", "==", "#.C3.89galit.C3.A9_simple_(.3D.3D)")}} et {{jsxref("Opérateurs/Opérateurs_de_comparaison", "===", "#.C3.89galit.C3.A9_stricte_(.3D.3D.3D)")}}, renvoient false pour vérifier que {{jsxref("NaN")}} est NaN. La fonction Number.isNaN est nécessaire pour distinguer ce cas. Le résultat de cette comparaison sera différent avec les autres méthodes de comparaisons en JavaScript.

+Les deux opérateurs d'égalité, {{jsxref("Opérateurs/Opérateurs_de_comparaison", "==", "#.C3.89galit.C3.A9_simple_(.3D.3D)")}} et {{jsxref("Opérateurs/Opérateurs_de_comparaison", "===", "#.C3.89galit.C3.A9_stricte_(.3D.3D.3D)")}}, renvoient `false` pour vérifier que {{jsxref("NaN")}} _est_ NaN. La fonction `Number.isNaN` est nécessaire pour distinguer ce cas. Le résultat de cette comparaison sera différent avec les autres méthodes de comparaisons en JavaScript. -

En effet, la fonction globale {{jsxref("isNaN")}} convertit l'argument en un nombre.  Number.isNaN ne convertit pas l'argument. Cela signifie qu'on peut passer des valeurs qui, normalement, seraient converties en NaN, mais qui ne sont pas NaN. Cela signifie également que, uniquement lorsque la méthode sera utilisée avec des nombres qui valent NaN, elle renverra true.

+En effet, la fonction globale {{jsxref("isNaN")}} convertit l'argument en un nombre.  `Number.isNaN` ne convertit pas l'argument. Cela signifie qu'on peut passer des valeurs qui, normalement, seraient converties en NaN, mais qui ne sont pas NaN. Cela signifie également que, uniquement lorsque la méthode sera utilisée avec des nombres qui valent `NaN`, elle renverra `true`. -

Exemples

+## Exemples -
Number.isNaN(NaN); // true
+```js
+Number.isNaN(NaN); // true
 Number.isNaN(Number.NaN); // true
 Number.isNaN(0 / 0); // true
 
@@ -56,46 +55,32 @@ Number.isNaN("37.37");
 Number.isNaN("");
 Number.isNaN(" ");
 Number.isNaN("NaN");
-Number.isNaN("blabla"); // ex : cette valeur aurait rendu true avec la méthode isNaN de l'objet global
- -

Prothèse d'émulation (polyfill)

- -

La fonction suivant fonctionne car NaN est la seule valeur JavaScript qui n'est pas égale à elle-même.

- -
Number.isNaN = Number.isNaN || function(value) {
-    return typeof value === "number" && isNaN(value);
-}
- -

Spécifications

- - - - - - - - - - - - - - - - - - - -
SpécificationÉtatCommentaires
{{SpecName('ES2015', '#sec-number.isnan', 'Number.isnan')}}{{Spec2('ES2015')}}Définition initiale.
{{SpecName('ESDraft', '#sec-number.isnan', 'Number.isnan')}}{{Spec2('ESDraft')}} 
- -

Compatibilité des navigateurs

- -

{{Compat("javascript.builtins.Number.isNaN")}}

- -

Voir aussi

- - +Number.isNaN("blabla"); // ex : cette valeur aurait rendu true avec la méthode isNaN de l'objet global +``` + +## Prothèse d'émulation (_polyfill_) + +La fonction suivant fonctionne car `NaN` est la seule valeur JavaScript qui n'est pas égale à elle-même. + +```js +Number.isNaN = Number.isNaN || function(value) { + return typeof value === "number" && isNaN(value); +} +``` + +## Spécifications + +| Spécification | État | Commentaires | +| -------------------------------------------------------------------------------- | ---------------------------- | -------------------- | +| {{SpecName('ES2015', '#sec-number.isnan', 'Number.isnan')}} | {{Spec2('ES2015')}} | Définition initiale. | +| {{SpecName('ESDraft', '#sec-number.isnan', 'Number.isnan')}} | {{Spec2('ESDraft')}} |   | + +## Compatibilité des navigateurs + +{{Compat("javascript.builtins.Number.isNaN")}} + +## Voir aussi + +- L'objet {{jsxref("Number")}} auquel appartient cette méthode. +- La méthode {{jsxref("Objets_globaux/Object/is", "Object.is")}} qui permet d'effectuer des comparaisons sur l'égalité de valeur +- La méthode {{jsxref("isNaN")}} de l'objet global -- cgit v1.2.3-54-g00ecf