2020-12-21 15:38:52 +01:00

34 lines
534 B
Plaintext

Comparing dissimilar types using the strict equality operators `+===+` and `+!==+` will always return the same value, respectively `+false+` and `+true+`, because no type conversion is done before the comparison. Thus, such comparisons can only be bugs.
== Noncompliant Code Example
----
var a = 8;
var b = "8";
if (a === b) { // Noncompliant; always false
// ...
}
----
== Compliant Solution
----
var a = 8;
var b = "8";
if (a == b) {
// ...
}
----
or
----
var a = 8;
var b = "8";
if (a === Number(b)) {
// ...
}
----