私は と の違いを知っていますが==
、それは厳密な等価性 ( ) ではなく型強制等価性 ( )を使用して評価されることになって===
いると常に信じていました。if (condition)
condition
true
===
==
例を参照してください。
if (1) {
console.log("1");
}
if (1 == true) {
console.log("2");
}
if (1 === true) {
console.log("3");
}
戻り値:
::1
::2
true
型が異なるため、1 が と厳密に等しいわけではないことはわかっていますif (condition)
が、W3C に従って===
実行する場合は、 の型強制等価性ではなく、厳密な等価性テスト ( ) を実行する必要があり==
ます。
では、なぜ 1 を記録しているのでしょうか。