Dojo.Currency中的货币舍入不一致

Dojo.Currency中的货币舍入不一致,dojo,Dojo,我正在使用dojo.currency格式。在它如何循环的问题上似乎存在着不一致之处,我试图找出我是否做错了什么: dojo.currency.format("66.315",{currency:"USD"}) "$66.31" dojo.currency.format("669.315",{currency:"USD"}) "$669.32" 在上面的示例中,两个价格都将四舍五入到32美分,但由于某种原因,我最终得到了两个不同的金额。看起来dojo.currency在封面下使用dojo.num

我正在使用dojo.currency格式。在它如何循环的问题上似乎存在着不一致之处,我试图找出我是否做错了什么:

dojo.currency.format("66.315",{currency:"USD"})
"$66.31"
dojo.currency.format("669.315",{currency:"USD"})
"$669.32"

在上面的示例中,两个价格都将四舍五入到32美分,但由于某种原因,我最终得到了两个不同的金额。

看起来dojo.currency在封面下使用dojo.number.round,而dojo.number.round使用javascript toFixed。这就是已知的浮点问题


改为使用Math.round(数字*Math.pow(10个位置))/Math.pow(10个位置)

它在所有web浏览器上都是一致的吗?它在Chrome、Firefox、android浏览器和IOS浏览器上得到确认