JS数值计算彻底消除多余小数,只保留小数点后面两位

在JS数值计算相减过程中,当遇到数字3,6,9时非常讨厌,因为相减会产生后面一大串的小数位,造成数值上的不精确,我也是郁闷了很长时间才发现,需要手动的处理给它做个还原手术,换它本来面目,原来是计算的时候补数出现的问题

var left = acc - allcount;
    var arr = (new String(left)).split(".");
    var xs = arr[1];
    if((xs+"").length>3){
      if((xs+"").charAt(2)=='9'){
         left = arr[0]+"."+(parseInt((xs+"").substring(0,2))+1);
      }
     if((xs+"").charAt(2)=='0'){
       left = arr[0]+"."+(xs+"").substring(0,2);
      }
    }

通过这样处理就可以避免后面计算产生的一长串的小数位。

你可能感兴趣的:(js)