JavaScript

「null」と「undefined」の違いを理解してエラーを防ぐJavaScript入門

「null」とは?初心者でもわかるJavaScriptデータ型の違いと判定方法

JavaScriptでは、nullは特別な値であり、オブジェクトが「意図的に空」であることを表すために使用されます。しかし、nullの判定や、それが空文字やundefinedと混同されることも少なくありません。この記事では、null判定の基本的な方法や、空白やundefinedとの違いをサンプルコードを使ってわかりやすく解説します。


nullとは何か?

nullとundefinedの違い

JavaScriptのnullは、値が存在しないことを意図的に示す特別な値です。
これは、変数が明示的に「値を持たない状態」であることを表現します。

nullundefined
定義値が存在しないことを明示的に示す値が未定義であることを表す
データ型オブジェクト(typeof null"object"未定義(typeof undefined"undefined"
使用場面意図的に空を表す変数が初期化されていない場合など

null判定の基本

nullを判定するには、比較演算子を使用します。以下の例を見てみましょう。

サンプルコード: null判定

let value = null;

if (value === null) {
    console.log("valueはnullです");
} else {
    console.log("valueはnullではありません");
}

このコードでは、valuenullであるかどうかを厳密比較(===)で判定しています。厳密比較を使うことで、型も含めて一致しているかを確認します。

nullと空文字の違い

nullは「値がない」ことを意味しますが、空文字("")は「値が空の文字列である」ことを示します。この2つを正しく区別することが重要です。

サンプルコード: nullと空文字の違い

let nullValue = null;
let emptyString = "";

console.log(nullValue === emptyString); // false
console.log(nullValue == emptyString);  // false
console.log(typeof nullValue);          // "object"
console.log(typeof emptyString);        // "string"

nullとundefinedを区別する方法

特定の値がnullundefinedかを判定するには、次のような方法を使います。

サンプルコード: nullとundefinedを区別

let nullValue = null;
let undefinedValue;

if (nullValue === null) {
    console.log("これはnullです");
} else if (undefinedValue === undefined) {
    console.log("これはundefinedです");
}

まとめ

  • nullは「値が存在しないこと」を示す意図的な値です。
  • undefinedは「未定義の状態」を表します。
  • 厳密比較(===)を使うことで、安全にnullを判定できます。
  • 空文字("")やundefinedとの違いを明確に区別することが大切です。

JavaScriptでは、データの状態を正確に把握するためにnullundefinedを使い分ける必要があります。
この記事が、あなたのコードをより安全で理解しやすいものにする助けとなれば幸いです。

-JavaScript
-