Baseline Widely available
The isFinite()
function determines whether a value is finite, first converting the value to a number if necessary. A finite number is one that's not NaN
or ±Infinity
. Because coercion inside the isFinite()
function can be surprising, you may prefer to use Number.isFinite()
.
function div(x) {
if (isFinite(1000 / x)) {
return "Number is NOT Infinity.";
}
return "Number is Infinity!";
}
console.log(div(0));
// Expected output: "Number is Infinity!""
console.log(div(1));
// Expected output: "Number is NOT Infinity."
Syntax Parameters
value
The value to be tested.
false
if the given value is NaN
, Infinity
, or -Infinity
after being converted to a number; otherwise, true
.
isFinite()
is a function property of the global object.
When the argument to the isFinite()
function is not of type Number, the value is first coerced to a number, and the resulting value is then compared against NaN
and ±Infinity. This is as confusing as the behavior of isNaN
â for example, isFinite("1")
is true
.
Number.isFinite()
is a more reliable way to test whether a value is a finite number value, because it returns false
for any non-number input.
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
Specifications Browser compatibility See also
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4