Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【JavaScript ECMAScript】Strict equality (===)演算子の使い方

Strict equality (===)演算子の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

Strict equality (===)演算子は、JavaScriptにおいて二つの値が厳密に等しいかどうかを比較する演算子です。この演算子の主な役割は、比較対象となる二つの値の「型」と「値そのもの」が完全に一致する場合にのみtrue(真)を返し、それ以外の場合はfalse(偽)を返すことです。

この「厳密な」比較とは、JavaScriptが自動的な型変換(型強制、Type Coercion)を一切行わないことを意味します。例えば、数値の5と文字列の"5"は、見た目の値は同じでも型が異なるため、5 === "5"という比較はfalseとなります。これは、型を変換してから比較を行う抽象的等価演算子(==)との決定的な違いです。

Strict equality (===)演算子は、予期せぬ型変換によって発生する可能性のあるバグを防ぎ、コードの信頼性と予測可能性を高めるために、プログラミングの現場で広く推奨されています。データ型を厳密にチェックする必要がある場面や、変数の値が期待通りの型と値を持っているかを確認する際に非常に有用です。

いくつかの特殊なケースも存在します。たとえば、NaN(Not-a-Number)という値は、自分自身と比較してもfalseとなります(NaN === NaNfalse)。これはNaNが数値ではない状態を表す特殊な値であるため、通常の等価性のルールが適用されないためです。一方で、+0-0といった異なる符号のゼロは、Strict equality (===)演算子では等しいと判断されます(+0 === -0true)。

システムエンジニアを目指す初心者の方にとって、==ではなく===を日常的に使用することは、JavaScriptの厳密な挙動を理解し、より堅牢でバグの少ないコードを記述するための重要な習慣となります。常に厳密な比較を意識してコードを書くことが推奨されます。

公式リファレンス: Strict equality (===)

構文(syntax)

15 === "5"

引数(parameters)

引数なし

引数はありません

戻り値(return)

boolean

二つのオペランドの値と型が両方とも等しい場合に true を返します。それ以外の場合は false を返します。

関連コンテンツ

関連プログラミング言語