Number.isFinite()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
La méthode Number.isFinite()
permet de déterminer si la valeur fournie est un nombre fini.
Exemple interactif
Syntaxe
Number.isFinite(valeurÀTester);
Paramètres
valeurÀTester
-
La valeur dont on souhaite savoir si elle est finie.
Valeur de retour
Un booléen indiquant si la valeur passée en argument est un nombre fini.
Description
Par rapport à la fonction de l'objet global isFinite()
qui convertit l'argument donné en un nombre, la fonction Number.isFinite
ne convertit pas l'argument et ne renvoie pas true
.
Exemples
Number.isFinite(Infinity); // false
Number.isFinite(NaN); // false
Number.isFinite(-Infinity); // false
Number.isFinite(0); // true
Number.isFinite(2e64); // true
Number.isFinite("0"); // false, ce qui aurait
// renvoyé true avec isFinite("0")
Number.isFinite(null); // false, ce qui aurait
// renvoyé true avc isFinite(null)
Prothèse d'émulation (polyfill)
// Number.isFinite polyfill
// http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isfinite
if (typeof Number.isFinite !== "function") {
Number.isFinite = function isFinite(value) {
// 1. Si Type(number) n'est pas Number, on renvoie false.
if (typeof value !== "number") {
return false;
}
// 2. Si le nombre est NaN, +∞, ou −∞, on renvoie false.
if (value !== value || value === Infinity || value === -Infinity) {
return false;
}
// 3. Sinon on renvoie true.
return true;
};
}
Deuxième version plus concise qui utilise la méthode globale isFinite
if (Number.isFinite === undefined)
Number.isFinite = function (value) {
return typeof value === "number" && isFinite(value);
};
Spécifications
Specification |
---|
ECMAScript Language Specification # sec-number.isfinite |
Compatibilité des navigateurs
BCD tables only load in the browser
Voir aussi
- L'objet
Number
auquel appartient cette méthode - La méthode
isFinite()
de l'objet global