NaN

グローバルのNaNプロパティは、Not-A-Number(数値では無い)を表す値です。

NaNのプロパティ属性
書き込み可 ×
列挙可 ×
設定可 ×

文法

NaN

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

NaNの初期値はNot-A-Numberであり、Number.NaNと同じです。 モダンブラウザでは、NaNは設定不可、書き込み不可のプロパティとなっています。 また、そうでなかったとしても、この値の上書きは避けるべきです。

プログラムでNaNが使用されるのは珍しく、 Math関数(例えば、Math.sqrt(-1))が失敗した際に、 または数値を解析する関数(例えば、parseInt("blabla"))が失敗した際に返される値として使用されます。

NaN値の判定

NaN値を判定するのに、等価演算子(==と===)を使用することは出来ません。 代わりに、Number.isNaN()、 またはisNaN()を使用してください。 (訳注: ただし、いずれのisNaN()も

NaN === NaN;        // false
Number.NaN === NaN; // false
isNaN(NaN);         // true
isNaN(Number.NaN);  // true

仕様

ブラウザ互換性

デスクトップ
機能 Chrome Firefox
(Gecko)
IE Opera Safari
基本 ◯ ◯ ◯ ◯ ◯
モバイル
機能 Android Chrome for
Android
Firefox
Mobile
IE
Mobile
Opera
Mobile
Safari
Mobile
基本 ◯ ◯ ◯ ◯ ◯ ◯

関連項目

 Back to top

© 2017 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.

このページは、ページトップのURL先のMozilla Developer Network(以下、MDN)のコンテンツを翻訳した内容を基に構成されています。 構成について異なる点も含まれますので、下記の項目を確認し、必要に応じて元のコンテンツをご確認ください。 もし、誤訳などの間違いを見つけましたら、 @tomofまで教えていただければ幸いです。

  • 特定のブラウザに特化しすぎている情報やあまりにも古い情報、 または試験的に導入されているようなAPIや機能については、省略していることがあります。
  • 例やデモについて、実際にページ内で動作させる関係で一部ソースコードを変更している場合や、 その例で使用しているコンテンツの単語や文章などを日本人向けに変更しいてる場合があります。
  • MDNの更新頻度が高いため、元のコンテンツと比べ情報が古くなっている可能性があります。
  • "訳注:"などの断わりを入れた上で、日本人向けの情報の追記を行っている事があります。