私はブール値false
、または整数(0を含む)のいずれかの変数を持っています。私は以下のようにswitch文の中に入れたい:GoogleのChromeで私のテストではJavaScript switch文で厳密な比較を行うのは安全ですか?
switch(my_var){
case 0:
// Do something
break;
case 1:
// Do something else
break;
case false:
// Some other code
}
、完璧に動作しているようですが、私は怖いので、それを使うには少し緊張していますその一部のブラウザではmy_var
がfalse
の場合、0 == false
以降の最初のケースを実行する可能性があります。
私は、スイッチのステートメントが0 !== false
というような厳密な比較を使用するというJavaScriptの公式があるかどうか疑問に思っていますが、私自身は何も見つかりませんでした。これがうまくいくかどうかわかりません異なるJavaScriptエンジンswitch文で行われた比較が厳密であることが保証されているかどうかは誰にも分かりますか?
それは[それは1999年以来そのようなパーティーされている](http://www.ecma-international.org/publications/files/ECMA-ST-ARCH/ECMA-262,%203rd%20edition、 %20December%201999.pdf)(page 68、s。12.11、CaseBlock#3) – Walf