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.
Die isFinite()-Funktion bestimmt, ob ein Wert endlich ist, indem sie den Wert bei Bedarf zuerst in eine Zahl umwandelt. Eine endliche Zahl ist eine, die weder NaN noch ±Infinity ist. Da die Umwandlung innerhalb der isFinite()-Funktion überraschend sein kann, ziehen Sie möglicherweise die Verwendung von Number.isFinite() vor.
Probieren Sie es aus
Syntax
isFinite(value)
Parameter
value-
Der zu testende Wert.
Rückgabewert
false, wenn der angegebene Wert nach der Umwandlung in eine Zahl NaN, Infinity oder -Infinity ist; andernfalls true.
Beschreibung
isFinite() ist eine Funktionseigenschaft des globalen Objekts.
Wenn das Argument der isFinite()-Funktion nicht vom Typ Number ist, wird der Wert zunächst in eine Zahl umgewandelt, und der resultierende Wert wird anschließend mit NaN und ±Infinity verglichen. Dies ist ebenso verwirrend wie das Verhalten von isNaN — zum Beispiel ist isFinite("1") true.
Number.isFinite() ist eine zuverlässigere Methode, um zu testen, ob ein Wert eine endliche Zahl ist, da es für jede Eingabe, die keine Zahl ist, false zurückgibt.
Beispiele
Verwendung von isFinite()
isFinite(Infinity); // false
isFinite(NaN); // false
isFinite(-Infinity); // false
isFinite(0); // true
isFinite(2e64); // true
isFinite(910); // true
// Would've been false with the more robust Number.isFinite():
isFinite(null); // true
isFinite("0"); // true
Spezifikationen
| Specification |
|---|
| ECMAScript Language Specification # sec-isfinite-number |
Browser-Kompatibilität
BCD tables only load in the browser