===
たとえば数値に演算子を使用することがどのように役立つかは明らかですが( 0
、null
およびundefined
すべてが偽の値であり、混乱を招く可能性があります)、===
文字列の比較に使用する利点があるかどうかはわかりません。
私のチームメイトの何人かはすべての比較にこの演算子を使用していますが、それは本当に意味がありますか?パフォーマンスに少なくとも若干の影響はありますか?
===
たとえば数値に演算子を使用することがどのように役立つかは明らかですが( 0
、null
およびundefined
すべてが偽の値であり、混乱を招く可能性があります)、===
文字列の比較に使用する利点があるかどうかはわかりません。
私のチームメイトの何人かはすべての比較にこの演算子を使用していますが、それは本当に意味がありますか?パフォーマンスに少なくとも若干の影響はありますか?
==
タイプが同じであることがわかっている場合は、との間でアルゴリズムに違いはありません===
。
とは言うものの、私が見るとき==
、私はそれを型強制に使用していると思います。それは私にコードを止めて分析させます。
私が見たとき、私は===
強制が意図されていないことを知っているので、私はそれに考え直す必要はありません。
言い換えれば、私はある種の型強制があることを意図==
している場合にのみ使用します。
===
JavaScriptでの比較には常に使用することをお勧めします。JavaScriptは動的言語であるため、2つの文字列と思われるものが、異なるタイプの変数である可能性があります。
次のことを考慮してください。
var a = "2", b = 2;
a == b // true
a === b // false
false
この場合の結果を保証する唯一の方法===
は、2つの値を比較するときに使用することです。