Kак правильно написать выражение - "только положительные числа и 2 знака после, если не ввели после запятой сотые, то записалось как .00"
Примеры:
const currentNumber = Number(e.target.value);
if (currentNumber >= 0) {
this.setState({
amount: currentNumber.toPrecision(3)
});
}
Вот так ?
let d = 2.3;
if( d > 0 ){
console.log( d.toFixed(2) )
}
В вопросе две задачи:
только положительные числа и 2 знака после
если не ввели после запятой сотые, то записалось как .00
toFixed
)
Если соединить решение обеих задач в одной функции, получится следующее:
function verify(input, transformNegative = false) {
const inp = String(input).trim(),
re = /^([+\-]?)(\d+(?:\.\d*)?)$/;
const [match, sign, n] = inp.match(re) || [];
if (!match || (!transformNegative && sign === '-')) return null;
return (+n).toFixed(2);
}
document.querySelector('input').addEventListener('input', ({ target }) => {
console.clear();
console.log(verify(target.value, true));
});
<input>
В решении я предположил что отрицательные числа может быть необходимо приводить к положительным, поэтому знак числа достаю регуляркой (для простоты). Приведение сделано банально игнорированием знака, и включается вторым аргументом функции: если выключено, то ввод отрицательного числа воспринимается как ошибка ввода (с возвратом null
).
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Подскажите ,как реализовать защиту от случайного закрытия вкладки ? Я вкурсе про windowonunload и window
Как проверить, что в ячейке лежит число или нет с помощью javascript?
Подскажите пожалуйста, кто знает, есть Windows на котором установлена Visual Studio и инструменты CordovaСоздал приложение для Android, и хочу теперь развернуть...