@valdemariuses

Как сделать правильное сложение дробных чисел?

Здравствуйте.
Подскажите пожалуйста, как в конкретном примере сделать чтобы при сложении дробных чисел не увеличивалось количество знаков после запятой. Уже все что можно перепробовал
<div class="my_quantity">
<span class="my_minus">-</span>
<input type="text" name="quantity" class="quant" value="1.22" size="5"/>
<span class="my_plus">+</span>
</div>

$('.my_plus').click(function () {
var input = $(this).parent().find('.quant');
input = input.val(parseFloat(input.val()) + 1.22);
input.change();
return false;
});
  • Вопрос задан
  • 2480 просмотров
Решения вопроса 1
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
Так у вас все работает правильно.
Просто при выводе конечного результата форматируйте его как надо.
https://jsfiddle.net/DelphinPRO/0h0gxfoq/

Точность конечно упадет. Чтобы повысить точность, нужно хранить оригинальное значение
https://jsfiddle.net/DelphinPRO/0h0gxfoq/1/
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Преобразовывайте числа в не дробные и обратно

7 * 1.22 = (7 * 122) / 100
Ответ написан
Комментировать
romy4
@romy4
Exception handler
используйте в нужном месте округление Math.round(value, 2)
Ответ написан
Комментировать
sergiks
@sergiks Куратор тега JavaScript
♬♬
Можно использовать метод Number.toFixed()
$('.my_plus').click(function() {
  var input = $(this).parent().find('.quant');
  input = input.val(
		(parseFloat(input.val()) + 1.22).toFixed(2)
	);
  input.change();
  return false;
});

fiddle
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы