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

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

目次

== と === の違い

  • 文字列型、数値型、論理型(true/false)について、
    == は値が同じか判定します。
    === は値とデータ型が同じか判定します。
  • JavaScript データ型

 

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

==で異なるデータ型を比較する場合です。

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

<script>
	var a = 1;

	// 数値型の1と文字列型の1を==で比較
	if (a == '1') {
		document.write("true"); //true
	} else {
		document.write("false");
	}

</script>

 

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

===で異なるデータ型を比較する場合です。

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

<script>
	var a = 1;

	// 数値型の1と文字列型の1を===で比較
	if (a === '1') {
		document.write("true");
	} else {
		document.write("false"); //false
	}

</script>

 

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

===で同じデータ型を比較する場合です。

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

<script>
	var a = 1;

	// 数値型の1同士を===で比較
	if (a === 1) {
		document.write("true"); //true
	} else {
		document.write("false");
	}

</script>

関連の記事

JavaScript if文のサンプル
JavaScript if文で配列を比較するサンプル
JavaScript データ型



△上に戻る