include::../description.adoc[] == Noncompliant Code Example [source,javascript] ---- if (a == b && a == b) { // if the first one is true, the second one is too doX(); } if (a > a) { // always false doW(); } var j = 5 / 5; //always 1 var k = 5 - 5; //always 0 ---- == Exceptions The specific case of testing one variable against itself is a valid test for ``++NaN++`` and is therefore ignored. Similarly, left-shifting 1 onto 1 is common in the construction of bit masks, and is ignored. Moreover comma operator ``++,++`` and ``++instanceof++`` operator are ignored as there are use-cases when there usage is valid. ---- if (f !== f) { // test for NaN value console.log("f is NaN"); } var i = 1 << 1; // Compliant var j = a << a; // Noncompliant ---- include::../see.adoc[] ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) include::../message.adoc[] include::../highlighting.adoc[] ''' == Comments And Links (visible only on this page) include::../comments-and-links.adoc[] endif::env-github,rspecator-view[]