2013-03-24 247 views
1

我有一个元素,我需要删除它的一个百分比。JavaScript数学百分比

我已经将原始价格存储为一个变量,并有另一个变量来计算百分比后的价格。

这里的HTML:

<div class="price">420.29</div> 

我想删除8折.price并把它固定到小数点后两位,并存储为一个变量。

这里的JS我到目前为止:

var price = $(".price").html(); 
var priceafter = Math.round(price - price * 8/100).toFixed(2); 

priceafter就返回为387.00,而不是386.66。

更新

感谢@datasage的点出我使用Math.round。这就是我把它改成,它似乎是工作:

var price = $(".price").html(); 
var priceafter = (price - price * 8/100).toFixed(2); 

回答

3

使用Math.round将你的结果四舍五入到最接近的整数。你可以使用只是toFixed这将正确地将它圆整到386.67

+0

啊哈,这就是为什么!谢谢,我会用我所做的更新这个问题。 – user2203362 2013-03-24 13:53:46

1

试试这个:

var price = parseFloat($(".price").html()); 
+1

甚至更​​好,'parseFloat($(“。price”)。text())''。 – 2013-03-24 13:48:42

+0

没有什么变化。 'parseFloat'做什么?它是'toFixed'吗? – user2203362 2013-03-24 13:50:57

+0

@JamesMcLaughlin实际上'价格'改变为420.2942,'priceafter'根本没有改变。 – user2203362 2013-03-24 13:52:09