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)) {
  // ...
}