プログラミング言語や環境設定を中心としたパソコン関連の技術メモです。
主にシステム開発中に調べたことをメモしています。TIPS的な位置付けで、気が向いたときにちまちま更新していきます。
JavaScript、「==」(イコール2つ)と「===」(イコール3つ)の違い
あんま意識しないで使っていたのですが、
よく考えたらJavaScriptさんって「==」(イコール2つ)と
「===」(イコール3つ)があるんですよね。

何が違うの(--?

と言う訳で調べてみました。

「==」(イコール2つ)を「等価演算子」、
「===」(イコール3つ)を「厳密等価演算子」と呼ぶそうです。
「厳密等価演算子」は型まで含めて比較するんだそーな。

つまり

  var num1 = 1;
  var num2 = "1";
  
  if(num1 == num2){
      alert("hoge");
  }
  
  if(num1 === num2){
      alert("hoge2");
  }


とか書くと"hoge"だけ出てくる訳ですな。
num1は数値でnum2は文字だから。

えっ?別に大した事無いって(--?
いやいや、大したことありますよ。
等価演算子「==」(イコール2つ)ですと

  var num1 = 0;
  var num2 = "";
  
  if(num1 == num2){
      alert("hoge");
  }


これ、alert出ますもん。
ゼロと空文字が同じ扱いになっちゃうのです。

ちんまいところだけにハマらないように気を付けましょう。
スポンサーリンク
 
このエントリーをはてなブックマークに追加 

category:● JavaScript  thema:システム開発 - genre:コンピュータ  Posted by ササキマコト 

  関連記事