Number.isFinite()
Number.isFinite() は静的メソッドで、渡された値が有限数であるかどうかを判断します。すなわち、指定された値が数値型であり、その数値が正の無限大 (Infinity)、負の無限大 (Infinity)、非数 (NaN) のどれでもないことをチェックします。
試してみましょう
構文
js
Number.isFinite(value)
引数
value-
有限数かどうかテストされる値。
返値
与えられた値が有限数かどうかを示す論理値です。
例
isFinite() の使用
js
Number.isFinite(Infinity); // false
Number.isFinite(NaN); // false
Number.isFinite(-Infinity); // false
Number.isFinite(0); // true
Number.isFinite(2e64); // true
Number.isFinite() とグローバルの isFinite() との違い
グローバルの isFinite() 関数と比較すると、このメソッドは最初に引数を数値に変換しません。すなわち、数値型の値で、それが有限数でもある場合のみ true を返し、非数については常に false を返すということです。
js
isFinite("0"); // true; coerced to number 0
Number.isFinite("0"); // false
isFinite(null); // true; coerced to number 0
Number.isFinite(null); // false
仕様書
| Specification |
|---|
| ECMAScript Language Specification # sec-number.isfinite |
ブラウザーの互換性
BCD tables only load in the browser
関連情報
Number.isFiniteのポリフィル (core-js)- このメソッドが所属している
Numberオブジェクト - グローバル関数
isFinite