У меня есть эта проблема с округлением или округлением с помощью javascript. Ну, он выполняет свою работу, но есть некоторые сценарии, в которых он не выполняет работу должным образом.Лучший способ округления или округления в javascript
Например.
Цена 0,30 с 15% -ой скидкой должна составлять 0,255 или 0,26. (это как-то хорошо)
Цена 79.99 с 50% -ой скидкой должна иметь 40 результат. (Фактический результат 39,995)
Пытались использовать это в качестве ссылки Using toFixed(2) and math round to get correct rounding
также сделал этот процесс Math.round(value*Math.pow(10,dec))/Math.pow(10,dec);
Любые идеи?
Thanks
Это мой первоначальный тест. Хотя это всего лишь начальный тест, что я сделал это проверил, если две последние цифры больше 5 затем применить Math.ceil
, что бы к 0.255
быть 0.26
, но при использовании 39.99
результат все равно будет 39.99
хотя 39.99
следует использовать Math.round
так, что результатом будет 40
.
То, что я хотел бы выполнить, состоит в том, чтобы иметь возможность округлять или округлять любое число, если оно требует округления или если оно требует округления.
UPDATE
Я был в состоянии решить мою собственную проблему. (Atleast для моей конкретной среды)
Я не понимаю ваш вопрос, какую степень точности вы бы хотели достичь?В первую очередь вам нужна точность двух знаков после запятой и ни одного, ни 1 десятичного разряда во втором –
@Benjamin Gruenbaum: в обоих случаях он округляется до 2 десятичных знаков – zerkms
Это должно ответить на ваш вопрос на две десятичные точки: http://stackoverflow.com/questions/5191088/how-to-round-up-a-number-in-javascript –