2017-03-09 80 views
0

我想增加一些整数值的浮点数(也许它不是浮动,这种情况下这是货币格式) 我有这样的货币值:“4,918.05”,我想添加30到它。求和浮点数和整数与jquery

 var inputs = $('.ig-control__cbx'); 
     var totalPrice = parseFloat($('.total-price-span').html()); 
     var add = 30; 
     totalPrice = totalPrice +add 
     $('.total-price-span').html(totalPrice.toFixed(2)); 

当我想总结他们,我得到4而不是总数。 我该如何解决它?

+1

'所以你recive只数第一无法识别的字符 – MysterX

+1

之前,这是JavaScript的一个非常基本的事实parseFloat'不承认逗号作为number'的'的一部分。这可能有助于http://stackoverflow.com/questions/14496531/adding-two-numbers-concatenates-them-instead-of-calculating-the-sum – Ankit

+0

@Ankit哪个答案符合这个问题? – Andreas

回答

2

我想我可以延长我的评论回答:

所以parseFloat不承认逗号作为number的一部分,所以你的第一个无法识别的字符之前recive只是数字。为了解决这个问题,你需要在解析float之前替换该字符串中的所有逗号。类似这样的:

var inputs = $('.ig-control__cbx'); 

var strVal = $('.total-price-span').html().replace(/,/g,''); 
var totalPrice = parseFloat(strVal); 

var add = 30; 
totalPrice = totalPrice +add 
$('.total-price-span').html(totalPrice.toFixed(2)); 
2

您将从parseFloat(“4,918.05”)获得4个。为了避免这种情况,你可以使用replace()来首先删除逗号。

var price = $('.total-price-span').html().replace(/,/g,''); 
var totalPrice = parseFloat(price);