5

私はいくつかの JavaScript コードで、人々が次のようなものを書いているのを見ます:

var myVar = "true";

//...

if(myVar == "true") {
     //...
}else{
     //...
}

TRUE や FALSE を使わないのはなぜですか? 私の知る限り、ブール型はブラウザにとって明らかです。

または、単なる貧弱なコードです...そして、この方法で書かないようにしてください。

4

3 に答える 3

6

それはちょうど悪いコードです。このように書かないようにしてください。

この種のコードは、保守性にとって最悪です。==(代わりに===) とtrueas 文字列の両方。

追伸:他にも"true" == true // false。引数については===、それは単にtrue == 1 // true、および他の多くのものがこのように似ているためです.

于 2012-07-10T12:13:37.113 に答える
4

true何らかの理由で :)を含む文字列が実際に予期される場合を除き、これを行うべきではありません。しかし、その場合でも、厳密な等価性( ===) を使用するのが正しい選択です。

あなたが示しているコード例では、これは単にひどいコードの書き方です。

于 2012-07-10T12:13:57.527 に答える
1

あなたが言うように、それはただの悪いコードです。

「本物の」開発者は を書くことはありませんがif (condition == true)if (condition)

とも書けるif (true == condition)。これは Yoda スタイルと呼ばれ、誤っ===.

于 2012-07-10T12:14:04.460 に答える