Javascript 十进制舍入问题 - 精度



我有这个函数,因为我试图四舍五入到下一个小数位,我已经阅读了很多关于这个主题的信息,但它似乎没有注册。

function myFunction() {
var testNumber = 399.894;       // required output is 399.90 - correct
var testNumber = 389.894;       // required outout is 389.90 - correct
var testNumber = 389.891;       // required output is 390.90 - correct
var testNumber = 379.791        // required output is 379.80 - correct
var testNumber = 399.991        // required output is 400.00 - correct
var testNumber = 379.761        // required output is 379.77 - incorrect - shows 379.80
return Number(Math.round(testNumber+'e1')+'e-1');
}
var myNumbers = myFunction();
alert(myNumbers );

我认为确保它四舍五入到下一美分可能很容易完成的工作似乎无法正常工作

小提琴链接 : http://jsfiddle.net/axd0y581/5/

希望这里有人能为我简化它

提前致谢

尝试这样的事情怎么样:

return Number(Math.ceil(testNumber * 100)/100).toFixed(2);

代码笔

也许你可以试试这个:Math.ceil(testNumber +'e2')/100

最新更新