2012-10-18 169 views
0

我有一個獨特的問題,我即將放鬆我的理智。計算javascript(simplecart)購物車總計,將隨機小數添加到總計

IM使用一個js車(simplecart),當我添加了一些車,加上一個2或減去從價格3,在第15位小數點:

這就是產品成本:35 ,99 這是它作爲計算總當我加入這個單一產品:

35,990000000000002€

我想這可能與運費或稅收的事,但即使禁用這些模塊後,其仍一樣。此價格也顯示爲購物車中的商品價格。

這裏我的jsfiddle:

http://jsfiddle.net/dJYNk/

我應該如何去解決呢?我不知道這是什麼時候偷偷溜進去的,整個項目都試圖隔離問題,但即使在這個最小的設置中也會出現這種情況,我似乎記得這款車運行得非常好。

可能是什麼問題?

回答

0
simpleCart.currency({ 
    code: "EUR" , 
     name: "Euro" , 
    symbol: " € " , 
    delimiter: " " , 
    decimal: "," , 
    after: false , 
    accuracy: 2 
}); 

將準確度更改爲兩個位置。您應該使用服務器端驗證來計算最終成本,並僅使用JavaScript來向用戶指示成本。

+0

我看到了,謝謝你,我認爲這是可以解決的,但現在有意義。 – user1721135

0

這是浮點精度的問題。 Javascript沒有小數類型,所以所有的數字都是以浮點數處理,這意味着你得到的是近似值而不是精確的表示。