問題タブ [comparison-operators]

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 投票する
1 に答える
112 参照

c# - 変数比較の問題

私はまだC#に比較的慣れていないため、これに対する答えはおそらくかなり明白ですが、解決するのに苦労しています

次のように定義された列挙型があります。

次に、次のようにタイプ Request として定義された 2 つの変数を用意します。

最初の変数は currentRequest = Request.GetData; を使用して割り当てられます。2 番目のローカル変数 request は、request = (Request)data を使用して割り当てられます。ここで、data は値 1 のバイトです (受信されている USB データのバッファから値がデコードされているため)。参考になるかわかりませんが、念のため記しておきます。

2番目の変数が宣言されているメソッド内でそれらを比較したいのですが、元々は次のようにしました:

これはほとんどの場合機能しますが、2 つの値が一致しないために例外がスローされることがありますが、デバッガーでそれらをチェックすると、両方とも Request.GetData と等しくなります。これにより、変数は値ではなくオブジェクトへのポインターである可能性があると考えたので、使用してみました...

同様に、ほとんどの場合、これらは両方とも機能しますが、値がデバッガーでチェックされたときに両方とも Request.GetData であっても失敗することがあります。

私を本当に混乱させているのは、ほとんどの場合は機能しますが、たまに失敗することです-私はそれが機能するか、一貫して機能しないことを期待しています.

何か案は?

0 投票する
5 に答える
17745 参照

javascript - == を使用して整数と文字列を比較するときの JavaScript での暗黙的なデータ型変換

コード:

質問:

  1. C プログラミングでは、ルール名のデータ型昇格があります。データ型が混在している場合 (例: 整数と浮動小数点の加算)、加算が実行される前にまず整数が浮動小数点に変換されます。

  2. 上記のコードは、テスト条件が true と評価された"It works"ことを示すメッセージを含む警告ボックスを表示します。if

  3. 緩く型付けされた JavaScript の場合、私はただ興味があります: どの変換がどの状況で実行されるかを決定する C のような規則はありますか? それに加えて、上記のJavaScriptコードは、num比較を行う前に変数値を整数値から文字列値に変換しますか、またはその逆ですか?

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

python - python - 比較の凝縮

私はここの新しいメンバーであり、Python も初めてです。私の質問は次のとおりです。このような行を持つことは有効ですか?

これをインタープリターでテストしたところ、一貫性のない結果が得られました。この行は、より一貫した期待される結果をもたらすように思われます

それとも、すべてをそのように明示的にレイアウトするのが常に最善ですか

この最後のものは常に機能しますが、ベスト プラクティスに従いながら、コードをもう少し簡潔にしようとしています。冗長な質問をしないように検索してみましたが、「is」「or」「and」の検索はかなり難しいです。ご協力いただきありがとうございます。

編集:迅速な返信ありがとうございます。「または」が必要な場合、これは私にとって完璧に機能します

しかし、「and」が必要な場合、これをどのように要約すればよいでしょうか?

0 投票する
3 に答える
233 参照

php - php 演算子 == (等値の並べ替え) と整数 0

php、私の最愛の古い友人。

さて、文字列「0」が偽の値になる理由を理解できます。'0'ゆるい型付け言語と同じであり0、ゆるい型付け言語であるため、これは公正な見方です。したがって、これにより== ==が得られます。0falsefalse0'0'

大丈夫...でも!! これは何ですか?

出力は....

これはどのように合理的ですか?これに驚くのは私だけでしょうか?私は何を見ていないのですか?

さらなるテストにより、整数 0 が (演算子 == により) に等しいことが証明されました。

当然、私は主に演算子 === を使用して比較します。これについて知ったので、もちろんプログラミングを調整する必要があります。それについては疑問の余地はありません。それでも!誰かがpl0xに光を当てることができますか?

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

javascript - 厄介な Javascript 整数比較のバグ

これはおそらく非常に単純なことですが、私の人生では、問題のようなものをリモートで見つけたり見つけたりすることはできません。私はJavascriptにかなり慣れていないので、HTMLフィールドで簡単なフォーム検証を行っています。当面の問題は次の2つです。

minSquare/maxSquare は、HTML フィールドから取得した値です。ご覧のとおり、(不動産設定での) 平方フィートの値は 500 ~ 5000 の間であると想定され、整数でなければなりません。ロジックはありますが、フォームを送信するたびに、下限が 500 であるにもかかわらず、値が 1,000 未満の場合、誤った最小平方フィートのエラーが出力されます。これは、値が100,000 未満の場合、独自の下限が 30,000 であるにもかかわらず印刷されません。

どういうわけか、最小金額に 500 を入力し、最大金額 (適切な範囲) に 5000 を入力すると、問題なく送信されます。しかし、たとえば 501 と 5000 と入力すると、最小値に対してエラーがスローされます。なぜこれが起こっているのか分かりません。ブラウザの問題ではないと思います。Chrome と Firefox の両方で試してみましたが、同じ問題です。助けていただければ幸いです。問題がばかげているほど、これをすばやく閉じることができます =)

編集:問題を修正しました。それは簡単だと知っていました。以下のアドバイスに従って、入力を解析する必要があり、検索対象の変数が文字列の場合にのみ機能する RegExp 検索メソッドを削除する必要がありました。回答者に感謝します。

0 投票する
6 に答える
31342 参照

sql - sqlは「以下」と「以下」を使用します

同じことをしているように見える2つの異なる論理演算子(<=&!>)があるのはなぜですか?一方が他方よりも優先される状況はありますか?

0 投票する
3 に答える
55314 参照

javascript - 「x は y より大きく、z より小さい」の表現は?

数値が 0 より大きく 8 より小さいかどうかをテストしようとしています。JavaScript でそれを行うにはどうすればよいですか?

これは私がしようとしているものです:

0 投票する
6 に答える
175 参照

ruby-on-rails - ID、タイプ、属性がまったく同じなのに、なぜ object_a != object_b なのですか?

同じであるべき 2 つの User オブジェクトがありますが、Ruby はそうではないと言っています。ここで何が起こっているのか誰か説明してもらえますか?

元の投稿以降の更新/追加情報:

  • 私が抱えている問題は断続的であることがわかりました。問題のページを更新する時間の約 30% で発生します。70% の確率で A == B となり、すべてが期待どおりに機能します。しかし、30% の確率で、A は B と等しくありません。
  • 問題が発生すると、Ruby は、オブジェクト (ユーザーとユーザー) が同じに見えても、オブジェクトのクラス (型) が同じではないことを実際に教えてくれます。問題が発生している 30% の時間の出力は次のとおりです。

.

したがって、オブジェクトのクラス (型) はまったく同じに見えます。ユーザーと言われています。しかし、a.class == b.class を評価すると、ページをレンダリングする時間の 30% で答えが false になり、問題が発生します。

誰が何が起こっているのか教えてもらえますか? どうもありがとう。

➜ ~ ruby​​ --version
ruby​​ 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
➜ ~ rails --version
Rails 3.0.10

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

sql - 1 つの SQL クエリで大なりまたは等しい/小なりまたは等しいを 2 回使用する

基本的にタイムスタンプ検索クエリを作成しようとしています。ユーザーが希望する予約の開始時刻と終了時刻を入力すると、検索により、その期間中のその部屋の現在の予約が見つかります。一致が見つかった場合、その部屋はすでに予約されていることがユーザーに通知されます。

私が直面している問題は、このクエリを送信するときです。

レコードがありません。変数は正しい情報を保持しているので、算術演算子の使い方が間違っているのではないかと思います。私は多くのことを調べ、1 つのクエリで両方のタイプの比較が使用されている例を多数見つけましたが、1 つの列に対してのみでした。このように、ある列に対して値を比較し、別の列に対して値をすべて 1 つのクエリで比較する例は見つかりませんでした。

誰が私が間違っているのか分かりますか? どんな助けでも大歓迎です。ありがとう!

編集:タイムスタンプをエポック時間に設定しているため、検索に入れられる開始時間は、開始時間と終了時間の間に収まるように、データベースに既に存在する時間以上になります。検索に投入された時間は、開始時間と終了時間の間に入るデータベースの終了時間以下になるため、終了時間は逆になります。標識を反転すると、データベース内の予約外の時間が見つかります。入力が検証されます。