Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【JavaScript ECMAScript】Number::Number.NaN静的データプロパティの使い方

Number.NaN静的データプロパティの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

Number.NaNプロパティは、JavaScriptにおいて「数値ではない(Not-a-Number)」ことを示す特別な値を保持するプロパティです。この定数値は、数値計算の結果が数学的に未定義であったり、有効な数値として表現できない場合に発生します。例えば、0 / 0のようなゼロによるゼロ除算や、負の数の平方根を求める操作など、無効な数学的演算の結果としてNaNが返されます。

NaNの最も重要な特徴は、JavaScriptの他のどの値とも異なり、NaN自身とも厳密に等しくないという点です。つまり、NaN === NaNという比較式は常にfalseを返します。この特殊な性質のため、変数がNaNであるかどうかを直接=== NaNで判定することはできません。

変数がNaNであるかを安全かつ正確に確認するには、グローバルなisNaN()関数、またはより厳密に型を考慮するNumber.isNaN()メソッドを使用することが推奨されます。特にNumber.isNaN()メソッドは、引数が実際に数値型のNaNである場合にのみtrueを返し、他の型の値に対してはfalseを返すため、型変換による意図しないtrueを避けることができます。このプロパティは、数値計算におけるエラー状態を適切にハンドリングし、プログラムのロバスト性を高める上で非常に重要な役割を果たします。

公式リファレンス: Number.NaN

構文(syntax)

1const notANumber = Number.NaN;

引数(parameters)

引数なし

引数はありません

戻り値(return)

number

Number.NaNは、数値として表現できない値(Not-a-Number)を表す定数です。この定数は、数値演算の結果が無効であった場合などに返されます。

関連コンテンツ

関連プログラミング言語