簡體   English   中英

計算javascript(simplecart)購物車總計,在總計中添加隨機小數

[英]calculating javascript (simplecart) cart total, adds random decimals to total

我有一個獨特的問題,即將失去理智。

即時通訊使用js購物車(simplecart),當我向購物車中添加商品時,它會在價格中加上2或減去3,以小數點后15位表示:

這是產品的成本:35,99這是我添加此單一產品時的計算結果:

€35,990000000000002

我認為這可能與運輸或稅收有關,但是即使禁用了這些模塊,其效果仍然相同。 此價格也顯示為購物車中的商品價格。

這是我的jsfiddle:

http://jsfiddle.net/dJYNk/

我應該如何解決這個問題? 我不知道什么時候偷偷溜進去,已經剝離了整個項目,試圖找出問題所在,但是即使在這種最小的設置下,它也會發生,我似乎還記得這輛車工作得很好。

可能是什么問題?

這是浮點精度的問題。 Javascript沒有十進制類型,因此所有數字都以浮點數進行處理,這意味着您將獲得近似值而不是精確的表示形式。

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

將精度更改為兩個位置。 您應該使用服務器端驗證來計算最終費用,並且僅使用javascript向用戶指示費用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM