JavaScriptでnullを判定する方法を解説!

JavaScriptでnullを判定する方法をサンプルコード付きで解説していきます。nullを厳密に判定する方法やtypeof演算子・Booleanで比較して判定する方法など紹介します。

コンテンツ [表示]

  1. 1JavaScriptでnullを判定したい
  2. 2JavaScriptのnullを判定する方法
  3. 2.1厳密にnullを比較する方法
  4. 2.2typeof演算を使う方法
  5. 2.3Booleanで判定する
  6. 3まとめ

JavaScriptでnullを判定したい

JavaScriptのnull値が無いことを表す特別な値です。

nullの値の例

var name = null;
console.log(name);
// →nullが返る

nullはよく未定義を表すundefinedと混同されますが、nullは値が無いことを意味し、undefinedは未定義であることを意味します。

両者の厳密な意味は異なりますので、違いがわからないという方はまずは下記を参考にしてみましょう。

 

あわせて読みたい
JavaScriptのundefinedとnullの違いと判定方法を解説!のイメージ
JavaScriptのundefinedとnullの違いと判定方法を解説!
JavaScriptのundefinedとnullという似ているが厳密には異なる両者の違いと判定方法をサンプルコード付きで解説していきます。

さて、JavaScriptのnullですが、値がnullであるかどうかのチェックの方法は複数あります。

今回はJavaScriptのnullの判定の方法について解説していきます。

JavaScriptのnullを判定する方法

それでは順番にJavaScriptでnullを判定する方法を解説していきます。

厳密にnullを比較する方法

まずこちらが推奨のnullを判定する方法です。===を使い値がnullかどうかを判定します。

厳密にif文でnullを比較する方法

var tmp = null;
if( tmp === null ) {
  console.log("true");
}else{
  console.log("false");
}

// →trueが返る

実はイコール2つでnullかどうかの比較をするとtmpundefined0NaNの場合でもtrueが返ってきてしまいます。

そのため思わぬバグを回避するためにnullの判定は厳密に===で判定するのがおすすめです。この場合はtmpはnullの場合のみtrueとなります。

typeof演算を使う方法

typeof演算子は対象の方を表します。つまりtypeof演算子を使うとnullの判定は下記のように出来ます。

typeof演算子を使ったnullの判定

var tmp = null;

if( typeof tmp === null ) {
  console.log("true");
}else{
  console.log("false");
}

// →trueが返る

この書き方でもnullの判定は行なえますが、先程の厳密にnullを比較する方法で見たコードと比べると同じ意味でありながら、typeof演算子の分だけ記述が増えています。

nullかどうかを判定だけしたい場合であればこちらの書き方よりも、先程の厳密にnullを比較する方法で書くのがおすすめです。

Booleanで判定する

最後にif文の条件式の中にそのまま入れ、Booleanで判定する方法です。

Booleanで判定する

var tmp = null;
if( !tmp ) {
  console.log("true");
}else{
  console.log("false");
}

// →trueが返る

もちろんこの書き方でもnullを判定できますが、undefined0NaNなどnull以外もtrueが返ってきますので、扱いには注意が必要です。

まとめ

いかがでしたでしょうか。JavaScriptでnullを判定する方法を紹介してきました。

やり方としては複数ありますが、やはり素直に===で厳密に比較するのがおすすめです。コーディングルールを統一するため下記のようなnullを判定する関数を作ってしまうのも方法の一つです。

ぜひ参考にしてみて下さい!

isNull関数

function isNull(obj) {
  return obj === null;
};
今だけ
無料

【7月31日まで】全カリキュラム無料で提供中!

Qumeru

Qumeru[クメル]ではプログラミング学習が出来るカリキュラムを7月31日までの期間限定で無料で提供しています。

無料登録することで、すぐにプログラミング学習を始められます。ぜひカリキュラムをお試し下さい!

関連記事

【期間限定】全カリキュラム無料で提供中!

Qumeru[クメル]ではプログラミング学習の全カリキュラムを7月31日まで期間限定で無料で提供しています。

無料登録することで、すぐにプログラミング学習を始められます。ぜひお試し下さい!

目次