私はいくつかの JavaScript コードで、人々が次のようなものを書いているのを見ます:
var myVar = "true";
//...
if(myVar == "true") {
//...
}else{
//...
}
TRUE や FALSE を使わないのはなぜですか? 私の知る限り、ブール型はブラウザにとって明らかです。
または、単なる貧弱なコードです...そして、この方法で書かないようにしてください。
私はいくつかの JavaScript コードで、人々が次のようなものを書いているのを見ます:
var myVar = "true";
//...
if(myVar == "true") {
//...
}else{
//...
}
TRUE や FALSE を使わないのはなぜですか? 私の知る限り、ブール型はブラウザにとって明らかです。
または、単なる貧弱なコードです...そして、この方法で書かないようにしてください。
それはちょうど悪いコードです。このように書かないようにしてください。
この種のコードは、保守性にとって最悪です。==
(代わりに===
) とtrue
as 文字列の両方。
追伸:他にも"true" == true // false
。引数については===
、それは単にtrue == 1 // true
、および他の多くのものがこのように似ているためです.
true
何らかの理由で :)を含む文字列が実際に予期される場合を除き、これを行うべきではありません。しかし、その場合でも、厳密な等価性( ===
) を使用するのが正しい選択です。
あなたが示しているコード例では、これは単にひどいコードの書き方です。
あなたが言うように、それはただの悪いコードです。
「本物の」開発者は を書くことはありませんがif (condition == true)
、if (condition)
とも書けるif (true == condition)
。これは Yoda スタイルと呼ばれ、誤っ=
て==
.