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 ⁨September 2015⁩.

The Number.isFinite() static method determines whether the passed value is a finite number — that is, it checks that a given value is a number, and the number is neither positive NaN.

Try it

console.log(Number.isFinite(1 / 0));
/ Expected output: false

console.log(Number.isFinite(10 / 5));
/ Expected output: true

console.log(Number.isFinite(0 / 0));
/ Expected output: false

Syntax

js
Number.isFinite(value)

Parameters

value

The value to be tested for finiteness.

Return value

The boolean value true if the given value is a finite number. Otherwise false.

Examples

Using isFinite()

js
Number.isFinite(Infinity); / false
Number.isFinite(NaN); / false
Number.isFinite(-Infinity); / false

Number.isFinite(0); / true
Number.isFinite(2e64); / true

Difference between Number.isFinite() and global isFinite()

In comparison to the global isFinite() function, this method doesn't first convert the parameter to a number. This means only values of the type number and are finite return true, and non-numbers always return false.

js
isFinite("0"); / true; coerced to number 0
Number.isFinite("0"); / false
isFinite(null); / true; coerced to number 0
Number.isFinite(null); / false

Specifications

Specification
ECMAScript® 2026 Language Specification
# sec-number.isfinite

Browser compatibility

See also

Follow Lee on X/Twitter - Father, Husband, Serial builder creating AI, crypto, games & web tools. We are friends :) AI Will Come To Life!

Check out: eBank.nz (Art Generator) | Netwrck.com (AI Tools) | Text-Generator.io (AI API) | BitBank.nz (Crypto AI) | ReadingTime (Kids Reading) | RewordGame | BigMultiplayerChess | WebFiddle | How.nz | Helix AI Assistant