与えられた値が数値かどうかの判定 (NaN)

こうやるのが正。かな?

if ( isNaN( parseInt( number ) )

isNaNは引数がNaNかどうかをチェックする関数なのですが、
NaN(Not a Number)って何??といったら、NumberオブジェクトのNaNプロパティらしいです。
http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Properties:NaN

そして、このプロパティの値は、代入できないし、比較できないのだそうです。

NaN is always unequal to any other number, including NaN itself; 
you cannot check for the not-a-number value by comparing to Number.
NaN. Use the isNaN function instead.

NaNはどんな数字に対してもイコールではありません。たとえ、自分自身に対しても。
だから、NaNを数字と比較しちゃだめです。変わりに、isNaN関数を使ってね。

だから、これもこれもだめ。

if ( parseInt( number ) == Number.NaN )
Number.NaN == Number.NaN  // false

なるほど。