💭
JavaScript(TypeScript)の ’==’ と ’===’ の違いについて @初心者
javascriptの ’==’ と ’===’ の演算子について
== と === の違いを聞かれたらパッと答えることができますか?
僕はできません。。。
ただ、ほぼほぼ業務では === の方をつかっていました。
改めて今回違いについて調べました。
==(等価演算子)
== は、等価演算子といい、簡単に言うとゆるい比較になります。
== は「等価演算子」と呼ばれ、比較する値の 型が違っても 自動的に型変換を行って比較します。
型変換が発生。
比較前に、JavaScriptが両方の値を同じ型に変換します。
console.log(5 == '5'); // 出力: true
数字の 5 と文字列の '5' は型が異なりますが、== を使うと自動的に型変換が行われ、結果は true になります。
===(厳密等価演算子)
=== は、厳密等価演算子は簡単に言うと、厳密な比較です。
=== は「厳密等価演算子」と呼ばれ、値だけでなく型も 同時に比較します。
型変換なし。
型変換を行わず、そのままの型で比較します。
console.log(5 === '5'); // 出力: false
数字の 5 と文字列の '5' は型が異なるため、=== を使うと結果は false になります。
どちらを使うべきか?
基本的には === (厳密等価演算子) を使う方が良いかもしれません。
バグの防止:型変換による予期せぬ結果を避けるため。
コードの明確化:意図した比較を明示的に行うことで、コードの読みやすさが向上します。
Discussion