``++NaN++`` is not equal to anything, even itself. Testing for equality or inequality against ``++NaN++`` will yield predictable results, but probably not the ones you want. 


Instead, the best way to see whether a variable is equal to ``++NaN++`` is to use ``++Number.isNaN()++``, since ES2015, or (perhaps counter-intuitively) to compare it to itself. Since ``++NaN !== NaN++``, when ``++a !== a++``, you know it must equal ``++NaN++``.
