Это еще одна из функций-хелперов. На этот раз мы пытаемся прочитать введенное пользователем число средствами 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Июль 13, 2016 г.
Сталкивался с таким поведением плагина fancybox. При открытии модального окна, происходит прокрутка в основном окне к самому верху. Как с этим бороться?
Это происходит не всегда, а при некоторых случаях верстки. Верстку уже менять проблематично, ...
Читать
Октябрь 25, 2023 г.
Попался мне UI баг, когда autocomplete слой с результатами поиска оказывался больше по ширине, чем input элемент, к которому он был прикреплен.
Не ясен был алгоритм, по которому вычислялась ширина слоя. В одних случаях это происходило корректно, ...
Читать
Декабрь 17, 2018 г.
При работе с HTML документом из JavaScript одной из типовых операций является установка значения того или иного атрибута выбранного контейнера (тега).
Vanila JS
В чистом js (vanila) значение атрибута можно установить следующим образом:
[crayon-6a4d60d8ce312644570566/] ...
Читать
Ноябрь 14, 2016 г.
Javasctipt. Есть массив из N элементов. Нужно удалить i-й.
Решение:
Нам нужен новый массив без i-го элемента. Если это не хеш, то используем функцию объекта Array.splice().
[crayon-6a4d60d8ce6d7208059951/]
Функция позволяет не только удалять, ...
Читать