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.

グローバル関数 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."

構文

isFinite(testValue)

引数

testValue

有限性の評価を行いたい値。

返値

正または負の InfinityNaNundefined の場合は false です。それ以外の場合は true です。

解説

isFinite はグローバルオブジェクトの関数プロパティです。

この関数を使用すると、ある数値が有限数かどうかを判定できます。 isFinite 関数はその引数内の数値を調査します。この関数は、引数が NaN、正の無限大、負の無限大のいずれかの場合に false を返し、それ以外は true を返します。

isFinite の使用

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

isFinite(0); // true
isFinite(2e64); // true
isFinite(910); // true

isFinite(null); // true が返される、より堅牢性の高い
// Number.isFinite(null) では false となる

isFinite("0"); // true が返される、より堅牢性の高い
// Number.isFinite("0") では false となる

仕様書

Specification
ECMAScript® 2025 Language Specification
# sec-isfinite-number

ブラウザーの互換性

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
isFinite

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

関連情報