javascript - parseFloat 和十进制字符串出现问题

标签 javascript jquery

我已经阅读了一些示例,了解如何将小数点值减少到两位,但我尝试过的任何方法似乎都不适用于我当前用于计算小计的函数..任何人都可以给我一些关于如何计算小计的建议吗?使这项工作正常进行。 (例如:我当前返回的值类似于 1848.0198768,但需要它只是 1848.02)。

这是我的calculateSubTotal代码:

  function calculateSubtotal()
  {
   var sum = 0;
   $(".clamount").each(function(i,e)
   {
    var v = parseFloat($(e).val());
     if(isNaN(v))
     {
      v = 0;
     }
    if($(e).attr("data-column")=="pbDebit") v = -v;
    sum += v;
   });
  $("#subtotal").text(sum);
  $("#bTotalBookingAmount").val(sum);

 I have tried the following to no avail:
 // var subtotalNew = parseFloat($('#subtotal').text(sum).toFixed(2));
 // $("#subtotal").text(subtotalNew);
 // $("#bTotalBookingAmount").val(subtotalNew);
 }

任何指导将不胜感激。我假设代码由于 NaN 值而无法工作(我试图在 if(isNaN(v)) 部分中解释它,它始终是数字而不是任何字母字符,所以我有点困惑。

最佳答案

使用固定(2) 减少值并将其舍入为小数点后两位。

关于javascript - parseFloat 和十进制字符串出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36556131/

相关文章:

验证表单时 Javascript 函数运行两次

javascript - .map 在未启动的数组上无法按预期工作

javascript - 除了 class、id 和 text 之外,我还能如何在 jQuery 元素中传递变量?

javascript - 使用 jQuery 根据文本区域的字数计算值?

javascript - 如果排除包含 www 的 url

javascript - 从 onclick 函数访问 javascript 数组

javascript - 单击以删除 AngularJS 中动态创建的元素

属性名称上的 Javascript toString 方法

javascript - jQuery 插件访问

javascript - this 和 $(this) 之间的区别以及使用 jQuery 的事件回调函数