問題タブ [not-operator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
822 参照

javascript - double not (!!) と JavaScript の型強制

明示的な変換を示す以外に、JavaScript で double not 演算子を使用する利点はありますか? 最近では、double not を使用して新しい API の存在をチェックするのが好きなようですが、私はその利点を読んだことがありません。

私が読んだことの1つは、ブール値への型キャストの簡潔であいまいな方法であるということですが、このコンテキストで使用すると、オブジェクトが定義されているかどうかを確認しているため、オブジェクトはとにかくブール値に自動強制されます。

要するに、なぜ人々はエンジンの上に 2 つのブール演算を行うのでしょうか?

0 投票する
12 に答える
5853 参照

php - if (!$variablename) はPHPで何をしますか?

それが「等しくない」ことは知って!=いますが、次の場合はどういう意味ですか。

私の最初の推測は、例外と関係がありますが、Google を見回しても何も返されませんでした。

それで、これは何をしますか?

0 投票する
4 に答える
9767 参照

python - Python の不等号演算子

私は ac スタイルの言語から来たので、!=as not equal を使用するのは自然なことですが、Python に来て、ドキュメントを読んで、この目的のために<>演算子が使用されていることを知りました。

最近、私は を使用した多くのコードを見た!=ので、私の質問は、そのうちの 1 つが他のものよりも優先されるのか、それとも非推奨なのかということです。

また、両者の違いがあれば教えていただきたいです。

0 投票する
0 に答える
117 参照

c# - DataTable の not 演算子

のSystem.Linq.Expressions.Expression.Not(predicate)の代替品は何ですかDatatable

フィルター文字列があり、ソースに逆に適用する必要があります。ここで Not 演算子を使用したいと思います。

これについて何か考えはありますか?

0 投票する
1 に答える
6901 参照

lucene - NOT 演算子がクエリ lucene で機能しない

lucene バージョン 3.0.3.0 を使用していますが、検索した一部の式が正しく機能しません。たとえば、フィールド「Model」で「!Fiesta OR Astra」を検索すると、「vauxhallAstra」のみが返され、「fordFocus」は返されません。私のコードは以下です:

0 投票する
1 に答える
5061 参照

css - ブール値が true でない場合に LESS ガードを実行するにはどうすればよいですか?

embeddedable は、ブール値を返すカスタム LESS PHP 関数です。

ブール関数が true を返す場合、LESS (lessphp) ガードで何かを行うことができます。

次の結果が得られます。

予想通り。

それが正しくない場合(演算子ではない)、どうすればよいですか。明白なこと:

それを使用しているブロックとともに、静かにドロップされます。ガードの真のバージョンを保持しているため、述語が間違っている場合は真のバージョンを使用する必要があることに注意してください。次に試しました:

not バージョンの代わりに。

mixin は (コンパイルされるのではなく) CSS に保存されるだけであり、それを使用しようとする bigClass ブロックは黙ってドロップされます。

と同じ:

0 投票する
1 に答える
3357 参照

c++ - 論理否定演算子とブール型キャスト演算子のオーバーロード

次のコードを検討してください。

ステートメントif(!t)if(!!t)は、オーバーロードされたoperator!()実装が呼び出されますが、(驚くべきことではありませんが) ステートメントでは、代わりにif(t)オーバーロードされたoperator bool()実装が呼び出されます。

ただし、operator!()実装がコメントアウトされている場合は、3 つのステートメントすべてでoperator bool()呼び出されます。

これが発生する「理由」は理解していますが、私の懸念は、論理 NOT 演算子 (!) をオーバーロードすると、真偽評価のセマンティクスの半分が失われているように見えますが、bool型キャスト演算子はそれらをうまくカバーしているように見えます。

何か不足していますか、それともブール型キャストを優先して論理 NOT 演算子のオーバーロードをやめるべきですか?

0 投票する
1 に答える
829 参照

excel - Infinite For...Next ループ: どうすれば修正できますか?

配列 Ar() のいずれかの値と同等でないセル値を持つすべての行を削除しようとしています。論理演算子 NOT を配置すると、何らかの理由でループが無限になります (Excel がフリーズします)。反対に、配列から値を含む行を削除したい場合に備えて、問題なく動作します。

問題はオンラインです:

If Not .Cells(i, 10).Value = Ar(j) Then

私のコード:

0 投票する
1 に答える
114 参照

javascript - でトグル!演算子がページ読み込み JavaScript で機能しない

クリックでテーブル行の色を切り替える必要がある onClick (angular.js ng-click を使用) があります。

これは初期実装です。

ここで、「type」はテーブル行のタイプで、「types」は角度コントローラーです。

types.setType(タイプ):

これは2回目のクリックで値を切り替えますが、最初のクリックでは値を変更しません。if-else ステートメントを使用して機能を実装しましたが、非常に基本的なことであるため、なぜこれが機能しないのかわかりません。

this.types[type] はデフォルトで false に設定されています。

誰かがなぜこれが起こっているのか説明できますか..