округлить число
Пытаюсь округлить число до 2-х знаков после запятой, но если после запятой один знак или число целое то нули не должны отображаться пробовал такие способы:
toFixed(2)-оставляет нули после запятой. ожидание-185, реальность-185.00 Math.round(2) не оставляет ничего. ожидание-20.49 реальность-20 toPrecision(2) вообще не так как надо работает. ожидание 5.25 реальность-5.2 А какая команда в js помогла бы мне округлять числа до нужного знака, но если нули, то их не выводить. Я понимаю что js считает с туповатой погрешностью, но хотелось бы что бы если число целое, то путь таким и будет, без лишних нулей. |
var number = 20.493; number = Math.round(number * 100) / 100; alert(number); |
danik.js,
Вот оно как, всё решилось... кхм... видел я такое решение, но думал что это костыль, однако вам я склонен верить))) А неужели нет готовых решений? Нужно обязательно число умноженное на 100, делить на 100? |
Гробовщик, хрен знает если честно. toPrecision принимает аргументом число знаков вообще, а не только после запятой и результатом дает строку, а не число.
|
без jQuery тут не обойтись!
|
Можно сделать так:
var number = 185; number = +number.toFixed(2); // или Number(number.toFixed(2)) alert(number); Дело в том, что toFixed возвращает строку, также как и toPrecision и toExponential, а строки "185.00" и "185" преобразуются в то же число. |
Часовой пояс GMT +3, время: 19:48. |