我有用四捨五入或四捨五入的javascript的問題。那麼它會完成這項工作,但有些情況下,它無法正確完成工作。在javascript中四捨五入或四捨五入的更好的方法
例如。
價格爲0.30,如果有15%的折扣,結果應該是0.255或0.26。 (這是某種程度上沒關係)
價格是79.99,50%的折扣應該有40個結果。 (實際結果是39.995)
以此爲參考Using toFixed(2) and math round to get correct rounding
也做了這個過程Math.round(value*Math.pow(10,dec))/Math.pow(10,dec);
任何想法試過嗎?
謝謝
這是我的初步測試。雖然這只是一個最初的測試什麼,如果最後兩位數是我沒被選中大於5然後申請Math.ceil
將在0.255
是0.26
但使用39.99
時,結果仍然是39.99
雖然39.99
應該使用Math.round
從而使結果將是40
。
我想完成的是如果需要四捨五入或需要四捨五入,可以將任意數字舍入或舍入。
UPDATE
我能解決我自己的問題。 (ATLEAST我的特定環境)
我不明白你的問題,你想達到什麼程度的準確性?您首先需要精確到小數點後兩位,第二位是小數點後一位 – 2013-03-07 23:54:28
@Benjamin Gruenbaum:在這兩種情況下,它都是四捨五入到小數點後兩位 – zerkms 2013-03-07 23:59:06
這應該回答您的問題,精確到小數點後兩位: http://stackoverflow.com/questions/5191088/how-to-round-up-a-number-in-javascript – 2013-03-08 00:05:24