JavaScript/isNaN
表示
isNaN()
は、JavaScriptの組み込み関数で、引数が「Not-a-Number(数値ではない)」かどうかを判定する関数です。
構文
[編集]isNaN(testValue)
戻り値
[編集]動作例
[編集]数値ではない値
[編集]数値に変換可能な値
[編集]isNaN(0)
→false
isNaN("123")
→false
(文字列が数値に変換可能)isNaN(true)
→false
(1
に変換)isNaN(false)
→false
(0
に変換)
グローバル関数との違い
[編集]isNaN()
は、グローバルスコープの関数であり、Number.isNaN()
とは挙動が異なります。
isNaN()
は型変換を行い、数値に変換できない値もtrue
と判定Number.isNaN()
は厳密にNaN
のみを判定
型変換の仕組み
[編集]関数は最初に引数を数値に変換してから、その値がNaN
かどうかを判定します。
注意点
[編集]- ECMAScript 5.1以降で利用可能
- 型変換を伴うため、予期しない結果に注意が必要
関連メソッド
[編集]Number.isNaN()
isFinite()
ブラウザ互換性
[編集]- 全主要ブラウザでサポート
- インターネット・エクスプローラー9以降
- モダンブラウザで完全対応
例外
[編集]特定の例外は発生しませんが、予期しない型変換に注意が必要です。