This will break numbers which happen to be strings.

Better solution: `if ( (number !== number) || !isFinite(number) )`, or even just `if (!isFinite(number))`, because `isFinite(NaN)` should return false.