Вот как работает JavaScript.
Number(undefined) // NaN
NaN == NaN // false
NaN < 0 // false
NaN > 0 // false
Итак, при сравнении вы заставляете проверять, как:
Number(undefined) < 10
// undefined is coerced to check with number
И, таким образом,
undefined == 10 // false
undefined > 10 // false
undefined < 10 // false