Цитата:
|
terminator-101, да, с пустой строкой я затупил. Я наоборот, получается, запретил пустую строку.
А с Infinity затупил ты. Потому что Infinity - это число. Но мы его числом считать не хотим, поэтому отметаем. |
Вот правильный вариант. Хотя проверка на пустоту не обязательна. Просто для наглядности, что пустую строку принимаем. И для уменьшения лишних расчетов (тупо из принципа).
if (input == '' || !(input == Infinity || isNaN(input))) { } |
danik.js,
А с такой вот хренью что делать? isNaN("\t")// false |
Все решилось паттерном терминатора, напомню задача была в том чтобы проверить на валидность введенную сумму, подходят числа вида n.n .n n. а так же пустая строка, событие вешается на кнопку сейв. то есть если ничего не ввели, то все равно можем сохранить и потом вернуться к заполнению. проверка на инфинити вообще тут странное лишнее дело, проверка на не число проходить не будет как сказал терминатор тк передается строка
|
Ant_Jhon,
Только имей в виду, что если ты будешь проверять как ты ранее показывал, типа re.test(input), у тебя будут проходить строки типа "foo10bar", если тебе надо то, что строка содержит ТОЛЬКО эти совпадения и ничего более, или ТОЛЬКО ОДНО из этих совпадений, и ничего более, тут надо другое решение искать. |
Цитата:
Цитата:
Пока трабла в этом: Цитата:
|
Цитата:
|
Думаю стоит просто удалять пробелы через input.trim(). При копипасте часто добавляется пробел справа, trim() бы тут помог.
|
Цитата:
|
Часовой пояс GMT +3, время: 12:14. |