数字四舍五入到小数点后两位

joj*_*711 3 javascript

如何在下面的方法中将数字四舍五入到小数点后两位?

$('.total').each(function() {
      var amt = Number($(this).find(".amount").val().replace(/,/g, ''));
      subtotal += amt;
});
Run Code Online (Sandbox Code Playgroud)

我试图这样做,Number($(this).find(".amount").val().toFixed(2).replace(/,/g, ''));但它不起作用,

非常感谢您对此的帮助。

Iho*_*iuk 6

func的主要问题toFixed是它返回字符串而不是数字。

有几种可能的解决方案:

  1. 您改进的解决方案

    Number(val.toFixed(2))
    
    Run Code Online (Sandbox Code Playgroud)

    或者

    parseFloat(val.toFixed(2))
    
    Run Code Online (Sandbox Code Playgroud)
  2. 更多数学方式的解决方案。

    Math.round(val*100)/100
    
    Run Code Online (Sandbox Code Playgroud)