JavaScript/isFinite
isFinite()
は、JavaScriptの組み込み関数で、引数が有限数(a finite number)であるかどうかを判定する関数です。
構文
編集isFinite(testValue)
戻り値
編集- 引数が有限の数値の場合は
true
を返します - 引数が
Infinity
、-Infinity
、NaN
の場合はfalse
を返します
動作例
編集正の数と負の数
編集isFinite(100)
→true
isFinite(-45.5)
→true
特殊な値
編集isFinite(Infinity)
→false
isFinite(-Infinity)
→false
isFinite(NaN)
→false
文字列と数値変換
編集isFinite("0")
→true
(文字列が数値に変換可能な場合)isFinite("abc")
→false
グローバル関数との違い
編集isFinite()
は、グローバルスコープの関数であり、Number.isFinite()
とは少し挙動が異なります。
isFinite()
は型変換を行い、数値に変換可能な値もtrue
と判定Number.isFinite()
は厳密に数値型のみを判定
型変換の仕組み
編集関数は最初に引数を数値に変換してから、その値が有限かどうかを判定します。
注意点
編集- ECMAScript 5.1以降で利用可能
- 型変換を伴うため、予期しない結果に注意が必要
関連メソッド
編集ブラウザ互換性
編集- 全主要ブラウザでサポート
Internet explorer9以降- モダンブラウザで完全対応
例外
編集特定の例外は発生しませんが、予期しない型変換に注意が必要です。