これはデフォルト値割り当てるには人気のあるパターンです:上記ブール式を正しく評価しているChrome Javascriptはありますか?
var aBool = '' || false;
var aString = false || '';
は、少なくともChromeのとFFのコンソールで、aBool
ブールに空の文字列の値をfalse
の値、およびaStringのを与えるだろう。それは逆です:
trueに変換できる場合はexpr1を返します。それ以外の場合は、 expr2を返します。したがって、ブール値で使用すると、|| オペランドをtrueに変換できる場合はtrueを返します。両方ともfalseに変換できる場合、 はfalseを返します。 ソース:mozilla
実際には便利ですが、それは正しいのですか?
いいえ、実際には意味がありません。そのページを自由に編集してください(「... ...」部分は削除する必要があります)。 – georg
"' true'に変換できる場合は 'expr1'を返し、それ以外の場合は' expr2'を返します。 –
何が問題なのですか? *ブール値*とともに使用すると、いずれかのオペランドが真の場合はtrueを返し、両方が偽の場合はfalseを返します。 – adeneo