What is "" in JavaScript really? -
this 1 says false, meaning "" number:
alert(isnan("")); this 1 says nan, meaning "" not number , cannot converted:
alert(parsefloat("")); i expecting second code convert "" 0 since "" number when tested in isnan wrong! getting crazy or missed something?
parsefloat tries parse number string isnan converts argument number before checking it:
number("") //0 http://ecma-international.org/ecma-262/5.1/#sec-9.3.1 parsefloat("") //nan http://ecma-international.org/ecma-262/5.1/#sec-15.1.2.3 apparently "broken" or "confusing", specs:
a reliable way ecmascript code test if value x nan expression of form x !== x. result true if , if x nan.
0 !== 0 // false nan !== nan //true function isexactlynan(x) { return x !== x; }
Comments
Post a Comment