Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用jquery求浮点和整数的和_Javascript_Jquery - Fatal编程技术网

Javascript 用jquery求浮点和整数的和

Javascript 用jquery求浮点和整数的和,javascript,jquery,Javascript,Jquery,我正在尝试向浮动中添加一些整数值(在这种情况下可能不是浮动,这是货币格式) 我有这样一个货币价值:“4918.05”,我想再加上30 var inputs = $('.ig-control__cbx'); var totalPrice = parseFloat($('.total-price-span').html()); var add = 30; totalPrice = totalPrice +add $('.

我正在尝试向浮动中添加一些整数值(在这种情况下可能不是浮动,这是货币格式) 我有这样一个货币价值:“4918.05”,我想再加上30

        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而不是总数。
如何修复它?

我想我可以扩展我的评论来回答:


因此
parseFloat
无法识别逗号作为
number
的一部分,因此您只接收第一个无法识别的字符之前的number。要解决这个问题,您需要在解析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));

我想我可以扩展我的评论来回答:


因此
parseFloat
无法识别逗号作为
number
的一部分,因此您只接收第一个无法识别的字符之前的number。要解决这个问题,您需要在解析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));

您将从parseFloat(“4918.05”)中获得4。要避免这种情况,可以先使用replace()删除逗号

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

您将从parseFloat(“4918.05”)中获得4。要避免这种情况,可以先使用replace()删除逗号

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

parseFloat
不将逗号识别为
number
的一部分,因此您只接收第一个未识别字符之前的数字这是javascript的一个非常基本的事实。这可能有助于@Ankit,以下哪一个答案适合这个问题?
parseFloat
不识别逗号作为
number
的一部分,因此您只接收第一个未识别字符之前的数字这是javascript的一个非常基本的事实。这可能有助于@Ankit,以下哪个答案适合这个问题?