b = !b に似たものについての説明を見てきました。しかし、この用法に翻訳するのに十分なほどよく理解していません。
何が
var a = !1;
行う?
a = !1は省略形の書き方a = falseです。これは通常、JavaScript を圧縮 (ミニファイ) しようとするときに使用されます。これは、3 バイトを節約できるためです。
これが通常の縮小されていない JS で見られる場合は、誰かが怠け者であるか難読化されている可能性があります。
これを chrome dev tools で実行して、何が得られるかを確認してください。
1 は JavaScript の真の値であり、それを否定するとfalse になるため、 aはfalseと評価されます。
多分このhttp://james.padolsey.com/javascript/truthy-falsey/を読んでください。とても興味深いです:)
一般に、!はそのオペランドのブール値を反転します。
もしそうならそう!aなるか、そうならそうなるでしょう。trueafalsefalseatrue
それが役立つことを願っています:)
!notオペレーターです。したがって! true、 に等しいfalseです。その結果は、trueまたはfalse
JavaScript のすべての値は、「真」または「偽」のいずれかです。booleanこれは、 (trueまたはfalse) が予期されるコンテキストでの解釈を説明しています。
「真の」値の例: true、1、[]、{}、「テキスト」
「偽」値の例: false、0、""
!1false に評価される真の値の否定です。b = !bが atogglerの場合、値を atruthyから afalsyに、またはその逆に変更します。
The ! operator is known as the Logical NOT operator.
In short, it returns false if the following value is 'truthy', and true otherwise.
Since 1 is 'truthy', your example, !1 reads NOT 1, which will return false.