Buenas de nuevo,
He estado mirando con más detenimiento la función isNaN(x), y entiendo que devuelve 'true' si 'x' NO es un número, y que el hecho de que devuelva 'false' no implica que 'x' sea un número, sino que puede ser otra cosa.
Lo que me he topado con lo siguiente, y no comprendo por qué en las líneas 1,3,4 devuelve 'false' !!!???
isNaN(null) --> false // ???
isNaN("null") --> true
isNaN("") --> false // ???
isNaN(" ") --> false // ???
isNaN( 0x900 ) --> false
isNaN("0x900") --> false
isNaN(undefined) --> true
isNaN("undefined") --> true
isNaN(NaN) --> true
isNaN("NaN") --> true
isNaN("hola") --> true
isNaN("23") --> false
isNaN(23) --> false
isNaN("a23") --> true
isNaN("23a") --> true
isNaN("23 3") --> true
isNaN("23 a") --> true