Действительно ли это возможно к parseFloat целая строка?

Как Вы знаете, JavaScript parseFloat функционируйте работы только, пока это не встретит недопустимый символ, так например,

parseFloat("10.123") = 10.123
parseFloat("12=zzzz") = 12
parseFloat("z12") = NaN

Существует ли путь или реализация parseFloat, который возвратил бы NaN, если целая строка не является допустимым числом плавающим?

11
задан mcm69 15 July 2010 в 15:28
поделиться

3 ответа

Используйте это вместо этого:

var num = Number(value);

Тогда вы можете сделать:

if (isNaN(num)) {
    // take proper action
}
20
ответ дан 3 December 2019 в 04:30
поделиться

Может быть, попробуйте:

var f = parseFloat( someStr );
if( f.toString() != someStr ) {
  // string has other stuff besides the number
}

Обновить: Не делайте этого, используйте метод @dcp :)

4
ответ дан 3 December 2019 в 04:30
поделиться
var asFloat = parseFloat("12aa");
if (String(asFloat).length != "12aa".length) {
     // The value is not completely a float
}
else {
     // The value is a float
}
0
ответ дан 3 December 2019 в 04:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: