如果我做了以下內容:的JavaScript解析INT四捨五入問題
parseInt(parseFloat(9.20)*100*1)/100 // returns 9.19
它返回9.19時,我想它返回9.20做什麼我需要改變,以得到它返回正確的值?
我有同樣的問題,當我將其更改爲:
parseInt(parseFloat(9.12)*100*1)/100 // returns 9.11
但是,任何其他值正常工作:
parseInt(parseFloat(9.30)*100*1)/100 // returns 9.30 (correct)
UPDATE:
的解決方案是這樣的:
(Math.round(9.20*100*1)/100).toFixed(2)
呀,這是不會在上班幾乎任何編程語言(包括JavaScript)。二進制浮點根本無法準確表示某些值。 –
你的代碼沒有意義...爲什麼不是9.12/100 * 100? –
[this](https://www.w3schools.com/js/js_numbers.asp)可能有幫助 –