ゲームが作れるようになるまでがんばる日記

ゲーム制作のことを中心にゲームに関することを書いています

等価演算子

ActionScript3.0には次のような等価演算子がある。

==  等価         
!=  不等価
=== 厳密な等価  
!== 厳密な不等価

この"厳密な"というのは型変換をしないというもの。例えば数値としての5と文字列の"5"を比較したときに、等価となるのが通常の等価で、不等価となるのが厳密な等価。
ということで、このページ(厳密な等価演算子)にあるサンプルをwonderflでテスト。

var string1:String = "5"; 
var num:Number = 5; 
trace(string1 == num); // true 
trace(string1 === num); // false 

ところがコンパイルエラー。文字列と数値は比較できなかった。
ウェブで検索してみたところ、どうやらエラーチェックがstrictモード、つまり厳密なエラーチェックではエラーとして扱われるみたい。
となると、strictモードでは厳密な等価(===)や厳密な不等価の演算子(!==)は何の意味があるんだろう。