如您所知,javascript 的parseFloat
函数仅在遇到无效字符时才起作用,例如
parseFloat("10.123") = 10.123
parseFloat("12=zzzz") = 12
parseFloat("z12") = NaN
如果整个字符串不是有效的浮点数,是否有 parseFloat 的方法或实现会返回 NaN ?
如您所知,javascript 的parseFloat
函数仅在遇到无效字符时才起作用,例如
parseFloat("10.123") = 10.123
parseFloat("12=zzzz") = 12
parseFloat("z12") = NaN
如果整个字符串不是有效的浮点数,是否有 parseFloat 的方法或实现会返回 NaN ?
改用这个:
var num = Number(value);
然后你可以这样做:
if (isNaN(num)) {
// take proper action
}
也许尝试:
var f = parseFloat( someStr );
if( f.toString() != someStr ) {
// string has other stuff besides the number
}
更新:不要这样做,使用@dcp的方法:)
var asFloat = parseFloat("12aa");
if (String(asFloat).length != "12aa".length) {
// The value is not completely a float
}
else {
// The value is a float
}