繁体   English   中英

将数字四舍五入到精确到小数点后两位以进行货币格式设置

Rounding a number to exactly two decimal places for currency formatting

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我需要为货币四舍五入到两位小数。

两个都

Math.round(num*Math.pow(10,2))/Math.pow(10,2)

Math.round(num*Math.pow(10,2))/Math.pow(10,2)

工作,除了它会切断任何尾随零,所以我得到29.9而不是29.90

解决这个问题的最佳方法是什么?

4 个回复

您可以将此添加到要设置特定格式的数字

.toFixed(2)
(Math.round(num*Math.pow(10,2))/Math.pow(10,2)).toFixed(2)

将其视为美分的总量是有道理的。 19.999 = 1999.9 美分,小数点后第 3 位无所谓,反正你付不起。

这是有道理的:

function convertToMoney(val){
    return (Math.floor(val*100).toFixed(0)/100).toFixed(2);
}

我正在使用这个,似乎没问题

Math.round(x * 100)/100

它看起来最短

1 将数字四舍五入到小数点后两位,并删除任何其他小数点

我有一个javascript函数,它从用户当前的网页中抓取一些数据,它抓取的一件事是类名称为“ price”的元素的内容。 目前,我使用: 这将除去元素中的数字和小数点以外的其他内容(理论上仅保留实际价格)。 在大多数情况下,这种方法效果很好,例如当元素<br/>20 ...

2 我不能四舍五入到小数点后两位

我正在尝试将此脚本的结果赋予2个小数。 它们实际上都已经有2位小数,但是当我将最后2位加在一起(35.75 + 16.06)时,我得到51.629999999999995欧元作为输出。 这是我的剧本; 你们中有人知道我做错了吗? ...

5 将结果四舍五入到小数点后两位

我正在使用我的JavaScript。 我希望将其加起来为两位小数。 因此,如果我加上:25.321 + 300.693 = 326.014 我希望总和为:326.01。 这是我的代码: 我也尝试这个: 但是结果不正确。 我再加上2个数字(128.65 + 0)= 1 ...

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

我想用这些输入/输出设计一个函数f(x : float, up : bool) : 现在,我知道了Python的round内置函数,但是它将始终向上舍142.449 ,这不是我想要的。 有没有一种方法可以比用epsilons做一堆float比较(容易出错)更好的pythonic方式 ...

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

我想将数字四舍五入到javascript中的小数点后两位。 我在SO上发现很多帖子说.toFixed方法的行为对于不同的浏览器是不可预测的。 并在许多地方找到了这个解决方案,毫无例外地接受了 但是我发现这种计算也得出了正确但错误的结果,例如 我是否缺少某些东西,或者我的理 ...

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

如何在下面的方法中将数字四舍五入到小数点后两位? 我试着做Number($(this).find(".amount").val().toFixed(2).replace(/,/g, '')); 但它不起作用, 真的很感谢你在这方面的帮助。 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM