問題タブ [triple-equals]

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 に答える
2163 参照

php - phpunitで厳密なequals/triple equals比較を行うにはどうすればよいですか?

phpunitで===/strict equals比較を行うにはどうすればよいですか?

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

javascript - Javascript イディオム: if (x === +x) は何をしますか?

Iのソース コードを読んでいると、次の行underscore.jsに出くわしました。

それは私にとって少し混乱しています。ここで実際に比較されているのは何ですか?ネイティブ配列の検出に関係があると思いますが、実際に何が起こっているのかわかりません。は何をし+ますか?===の代わりに==使用する理由 このスタイルのパフォーマンス上の利点は何ですか?

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

javascript - JavaScript トリプルイコールと 3 変数比較

誰かがこれを説明できますか?

また、この方法で2つ以上の数値を比較するブール論理の名前はありますか(私はそれを「3変数比較」と呼びましたが、それは間違っていると思います...)

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

javascript - if(window.location == 'x') で == を === に変更すると、ブロックが実行されなくなります

==の代わりに が使用されているコードをチェックしていますが、次の===行を変更しています。

これに:

ブロックが実行されなくなります。

正しいアプローチは何ですか?

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

javascript - JavaScript で 'hello' == ('hello' 以外の true を返すもの)?

==JavaScriptでは型強制との比較であることを理解しています。そして、次のステートメントが次のとおりであることを知っていますtrue

ただし、左側の「こんにちは」との比較が真であるとは言えません。

true「こんにちは」以外の結果と比較できる「こんにちは」はありますか?

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

javascript - Javascript 比較 == null 代替

JavaScript コードでは、次の if ステートメントの double-equals 構造を置き換えたいと考えています。

double equals は、jshint ルール "eqeqeq" では失敗します。この場合、double equals を triple equals に置き換えることが推奨されます。== null少しの間、上記のコードが次のように変更されたと想像してみましょう=== null

これは、値を持つ明示的に定義された変数に対しては機能しますnullが、残念ながら、このような未設定の変数に対しては失敗します。

以前は、3 等号のルールが重要だったときに、次のようにしていました。

しかし、これは非常に肥大化しています。

私が今思いつくことができる最善の代替手段は、if ステートメントの性質を使用し、式を否定して単純にその== null部分を削除する次のような false っぽい式に評価させることです。

私にとって、これははるかに単純で読みやすく、明示的な等号比較を完全に回避します。ただし、ここで見逃しているエッジの原因があるかどうかはわかりません。

問題は、一般的に== nullif 文の否定式に置き換えることができるかということです。もしそうなら、それがうまくいかない落とし穴と例外は何ですか? 一般的な配列項目、文字列、オブジェクト プロパティで機能しますか?

ソリューションを選択するための私の基準は

  • きれいなコード
  • 読みやすく、すぐに理解できる
  • jshint ルールを検証します
  • 最新のブラウザーで動作します (2015 年 1 月現在)

等値演算子==vs===の違いを議論するための他のわずかに関連する質問を認識していますが、これは単に if ステートメント内の null っぽいものと比較した評価の議論のためのものです。

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

javascript - 関数呼び出しでの === の意味

私は、EcmaScript 2017 に簡単に移行できると想定して ES6 を試していました。

途中で、このコードについて混乱しました

ES5に相当するもの

そこからデフォルトのパラメーターのことを理解しました。

しかしf(1)===50、両方のコードの意味は何ですか? それの使用は何ですか?

ここに別の例があります

とはf(1, 2, "hello", true, 7) === 9どういう意味ですか?

===値だけでなく、両方のタイプを含む演算子の LHS と RHS を比較することを理解しています。

しかし、なぜそれがそのように使用されたのですか??

その使用法を親切に説明してください。

これは私がこれを入手したリンクです。http://es6-features.org/#RestParameter