とあるソースで、Javascriptで比較演算子の「=」が3つになっている部分を発見しました。
始めてみたので何かわらず調べました。
Javascriptで値だけではなく型の一致もIF文でチェックできます。
Javascriptで値だけではなく方の一致もIF文でチェックする
ふと、とあるソースを眺めているとIF文で
if( a === b ){ }
のように比較演算子の「=」が3つになっている部分を発見しました。
なぜ「=」3つ?
調べてみると
== 左右の値が同じ場合はtrue 違ったら falseを返します。
=== 左右の値が同じ事に加えて型の一致も含まれます。
らしいです。
値だけの一致と型まで一致の違い
C言語などで「int i;」と言うように「変数の型」を宣言に必要とする言語と違ってJavascriptではもともと「var i;」のように「変数の型」ってありませんが、Javascriptでは値の比較や代入を行う際に可能な限り暗黙の型変換が行われます。
<html> <head> <SCRIPT LANGUAGE="JavaScript"> function chk() { if( "100" == 100 ){ window.alert( "==では一致" ); } else{ window.alert( "==では不一致" ); } if( "100" === 100 ){ window.alert( "===では一致" ); } else{ window.alert( "===では不一致" ); } return false ; } </SCRIPT> </head> <body> <input type="submit" value="チェック" onClick="javascript:chk();"> </body> </html>
結果は
==では一致 ===では不一致
と表示されます。
以上、Javascriptで値だけではなく型の一致もIF文でチェックする方法でした。