JavaScript if文の == と === の違い

JavaScriptのif文の == と === の違いについてです。

目次

サンプル == と === の違い
==で異なるデータ型を比較
  ===で異なるデータ型を比較
  ===で同じデータ型を比較

== と === の違い

  • 文字列型、数値型、論理型(true/false)について、
    == は値が同じか判定します。
    === は値とデータ型が同じか判定します。
  • 文字列型、数値型などのデータ型については以下を参照下さい。
    JavaScriptのデータ型とデータ型を調べる方法

 

==で異なるデータ型を比較

==で異なるデータ型を比較するサンプルです。

<script>
    const a = 1;

    // 数値型の1と文字列型の1を==で比較
    if (a == "1") {
        console.log("true"); //true
    } else {
        console.log("false");
    }
</script>

2行目は、数値型の1です。
5行目は、数値型の1と文字列型の1を==で比較しています。
この場合、データ型は異なりますが、値が等しいので結果はtrueになります。

 

===で異なるデータ型を比較

===で異なるデータ型を比較するサンプルです。

<script>
    const a = 1;

    // 数値型の1と文字列型の1を===で比較
    if (a === "1") {
        console.log("true");
    } else {
        console.log("false"); //false
    }
</script>

2行目は、数値型の1です。
5行目は、数値型の1と文字列型の1を===で比較しています。
この場合、値は同じですが、データ型が異なるので結果はfalseになります。

 

===で同じデータ型を比較

===で同じデータ型を比較するサンプルです。

<script>
    const a = 1;

    // 数値型の1同士を===で比較
    if (a === 1) {
        console.log("true"); //true
    } else {
        console.log("false");
    }
</script>

2行目は、数値型の1です。
5行目は、数値型の1同士を===で比較しています。
値とデータ型が一致しているため結果はtrueになります。

関連の記事

JavaScript if文 条件分岐を行うサンプル
JavaScript if文で配列を比較するサンプル

△上に戻る