NaN value, supposedly standing for “Not a Number”.
Given that, what would you expect from
typeof NaN? Probably not
NaN === NaN gives
NaN !== NaN gives
NaN is not equal to itself!
And best of all, for some reason
NaN isn’t a constant, but a global variable. So if you want to change it to something else (e.g.
NaN = 'fishcake') you can. Anyone who does should probably be shot, but the fact that it can be done at all is baffling.