如何在Javascript中始终将数字UP舍入到最近的便士

时间:2014-11-22 22:26:02

标签: javascript

我有一堆数字,例如797.3333333333334852.22222111933.111023,我想要总结到最近的便士,这样我已经提到过的数字会分别为797.34852.23933.12

我说最近的便士,但你也可以把它称为最近的十分之一。

有一个天花板功能,但只会舍入到最接近的整数,Math.round()

也是如此

3 个答案:

答案 0 :(得分:7)

答案 1 :(得分:1)

就这样做:Math.ceil(number * 100) / 100

答案 2 :(得分:0)

正确舍入到最接近的美分:

var yourNumber = 5.495;
yourNumber = Math.round(yourNumber * 100)/100;
alert(yourNumber);

始终舍入到最接近的一分钱:

function precision(a) { 
  if (!isFinite(a)) return 0;
  var e = 1, p = 0;
  while (Math.round(a * e) / e !== a) { 
    e *= 10; p++; 
  }
  return p;
}
if (precision(yourNumber) >= 3) {
  yourNumber = (Math.trunc(yourNumber * 100)/100) * 1 + 0.01;
}