2014-10-06 55 views
0

我在計算javascript時出現以下問題。使用Javascript計算舍入問題

var processAmount = parseFloat(166.98) - parseFloat(61.58); 

的結果是:如果105.39999999999999

並不重要我用parseFloat()與否。

我該如何解決這個問題?

+3

什麼'.toFixed(2)'? – putvande 2014-10-06 13:01:24

+0

解決什麼問題?我們只能假設預期的輸出是因爲你沒有定義它 – charlietfl 2014-10-06 13:02:39

+0

是的'.toFixed(2)'在這種情況下工作正常。 'var processAmount = parseFloat(parseFloat(166.98).toFixed(2) - parseFloat(61.58).toFixed(2))。toFixed(2);' – deepakb 2014-10-06 13:08:46

回答

0

有時浮動數字不能完全用二進制表示。

試試這個:

var processAmount = parseFloat(166.98) - parseFloat(61.58); 
processAmount.toFixed(2); 

FROM:Javascript float subtract

+0

Thnx這個工作! – 2014-10-06 13:06:36