Это еще одна из функций-хелперов. На этот раз мы пытаемся прочитать введенное пользователем число средствами javascript.
Javascript уже имеет довольно не плохую функцию parseFloat(strValue). Но она обладает некоторыми особенностями. В частности, требует ‘.’ как разделитель дробной части, и возвращает NaN, если значение извлечь не удаётся.
Желательно также, чтобы функция могла прочитать форматированное значение, где тысячи, миллионы и т.д. были разделены пробелом.
Следующая функция поможет избавится от перечисленных проблем при чтении пользовательского ввода числа с плавающей запятой.
|
|
function getFloatUI(value) { value = value.replace(',', '.').replace(/\s/g, ''); value = parseFloat(value); if (isNaN(value)) value = 0 return value; } |
Для случаев NaN, функция возвращает ноль.
Тестировать работу можно здесь:
Данная запись опубликована в 03.02.2017 15:30 и размещена в рубрике javaScript.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Сентябрь 17, 2018 г.
Довольно часто картинка на странице показывается в масштабе, и при попытке определить её размеры из скрипта вы получите размер контейнера, а не самой картинки.
Разберемся как получать реальные размеры изображения.
В общем, нет особых хитростей. ...
Читать
Июль 4, 2023 г.
В MUI компонентах мне не хватало поддержки ввода с маской. Давайте подключим библиотеку imask к mui компоненту TextField для ликвидации этого пробела.
Установите в ваш проект библиотеку imask (https://imask.js.org/), и сам материал https://mui.com. ...
Читать
Январь 24, 2021 г.
Некоторые ошибки происходят на стороне пользователя и не попадают в логи на сервере. В этом могут быть виноваты настройки сети, плагины браузера, которые установил пользователь, политики безопасности или антивирус, которые блокируют загрузку некоторых ...
Читать
Июнь 21, 2025 г.
Когда вы используете Fancybox для отображения изображений, SVG и других медиа-объектов, возникает интересная проблема: если внутри SVG находятся ссылки (<a>), они перестают работать. Почему? Потому что Fancybox «перехватывает» клик, и вы не попадаете ...
Читать