isNaNとisFiniteの違いについて
テストコード。
var f=function(a){ alert(a+': '+(!isNaN(a))+', '+isFinite(a)); }; f(0); // true, true f("0"); // true, true f("0x0F"); // true, true f("0hoge"); // false, false f(Number(0)); // true, true f(new Number(0)); // true, true f(Infinity); // true, false f(NaN); // false, false f(null); // true, true f(true); // true, true f(false); // true, true f([1,2,3]); // false, false f({hoge:'fuga'}); // false, false f(undefined); // false, false
結論。isFiniteはInfinityを除いて!isNaNの結果と同じ