1

Javascriptを使用してカートのチェックアウト価格をペニーに正確にするにはどうすればよいですか?

今、私が試していたすべてのトライアルラウンドなどを取り除いた後、私はテストするために高い15の製品/価格を使用して1.5セント高すぎます。

            for (var i = 0; i < Cookie.products.length; i++) {
            boolActive = Cookie.products[i].og_active;              
            if (boolActive)
            {
                itemPrice = Cookie.products[i].price;
                itemQty = Cookie.products[i].quantity;
                itemDiscountPercent = Cookie.products[i].discount_percent;

                subtotal = itemPrice * itemQty;
                priceDiscount = (subtotal * itemDiscountPercent);
                                    discountAmount += priceDiscount;
            }
        }
        if (!isNaN(discountAmount))
        { 
            var newCartTotal = (cartTotal - priceDiscount);
            alert("New Cart Total: " + newCartTotal);
        }
4

3 に答える 3

1
var newCartTotal = (cartTotal - pricediscount).toFixed(2)

それはあなたに値を与えますが、それは文字列になります。数値のままにする必要がある場合は、次を使用します。

var newCartTotal = ((cartTotal - pricediscount * 100) << 0) / 100;
于 2011-04-08T15:22:36.950 に答える
0

コードを次のように変更します。

priceDiscount = parseFloat( (subtotal * itemDiscountPercent).toFixed(2) );

と:

newCartTotal = parseFloat( (cartTotal - priceDiscount).toFixed(2) );
于 2011-04-08T15:46:35.730 に答える
0

各項目の割引を四捨五入する必要があります。priceDiscount = round_to_hundredth(subtotal * itemDiscountPercent)

この結果は、丸められていない結果を加算してから合計を丸めた場合に得られる結果と一致しない場合があることに注意してください。ただし、これは通常、請求書が手動で計算される場合に機能する方法です (特に、各アイテムの割引率が異なる可能性があるため、割引は行ごとに計算されます)。

という行を省略したと思いますdiscountAmount += priceDiscount

于 2011-04-08T15:15:30.000 に答える