isFinite()
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
La fonction isFinite() détermine si une valeur est finie, en convertissant d'abord la valeur en nombre si nécessaire. Un nombre fini est un nombre qui n'est pas NaN ou ±Infinity. Comme la contrainte à l'intérieur de la fonction isFinite() peut être surprenante, vous pouvez préférer utiliser Number.isFinite().
Exemple interactif
function div(x) {
if (isFinite(1000 / x)) {
return "Le nombre n'est PAS infini.";
}
return "Le nombre est infini !";
}
console.log(div(0));
// Résultat attendu : "Le nombre est infini !"
console.log(div(1));
// Résultat attendu : "Le nombre n'est PAS infini."
Syntaxe
isFinite(value)
Paramètres
value-
La valeur à tester.
Valeur de retour
false si la valeur donnée est NaN, Infinity ou -Infinity après avoir été convertie en nombre ; sinon, true.
Description
isFinite() est une propriété fonction de l'objet global.
Lorsque l'argument passé à la fonction isFinite() n'est pas de type nombre, la valeur est d'abord contrainte à un nombre, puis la valeur résultante est comparée à NaN et ±Infinity. Ce comportement est aussi déroutant que celui de isNaN — par exemple, isFinite("1") retourne true.
Number.isFinite() est une façon plus fiable de tester si une valeur est un nombre fini, car elle retourne false pour toute entrée qui n'est pas un nombre.
Exemples
>Utiliser la fonction isFinite()
isFinite(Infinity); // false
isFinite(NaN); // false
isFinite(-Infinity); // false
isFinite(0); // true
isFinite(2e64); // true
isFinite(910); // true
// Aurait été false avec la méthode plus robuste Number.isFinite() :
isFinite(null); // true
isFinite("0"); // true
Spécifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-isfinite-number> |
Compatibilité des navigateurs
Voir aussi
- La propriété
Number.isFinite() - La propriété
Number.NaN - La propriété
Number.POSITIVE_INFINITY - La propriété
Number.NEGATIVE_INFINITY