JavaScript - null と undefined

null と undefined

JavaScript の null 値は値が存在しないことを表す特殊な値です。null に対して typeof 演算子を使うと object の文字列が返されます。つまり null はオブジェクトが存在しない特別なオブジェクト値となります。

JavaScript には、値がないことを表す値として未定義 (undefined) 値があります。未定義 (undefined) 値は初期化されていない変数の値や、存在しないオブジェクトプロパティや、配列の要素を読み出したときの値が未定義値になります。戻り値のない関数が返す値や、関数の呼び出し時に値が指定されなかった引数の値も未定義値となります。

undefinednull のような予約語ではなく、あらかじめ定義されたグローバル変数で未定義値に初期化されています。未定義値に対して typeof 演算子を使うと、未定義値を表す undefined が返されます。

typeof null;       // object
typeof undefined;  // undefined
null と undefined の typeof の結果

ただし、上記のような違いがあるにもかかわらず、nullundefined は両者とも値がないので、同一のものとして扱えます。等値演算子 (==) は両者を等しいと判定します。そのため、厳密に両者を区別したいときは、同値演算子 (===) を使って下さい。

undefined == null;   // true
undefined === null;  // false
null と undefined の比較

nullundefined もプロパティやメソッドを持っていません。プロパティやメソッドにアクセスしようとすると TypeError が発生します。

関連記事

JavaScript のまとめページはプログラミング JavaScript 入門を参照してください。

Category:
プログラミング
公開日:
更新日:
Pageviews:
24
Shares:
0
Tag:
JavaScript
hatebu icon
hatebu