我正在努力研究如何将小数点舍入为.49或.99。jQuery将小数点四舍五入为.49或.99
我找到了toFixed(2)
函数,但不知道如何舍入或舍入。
基本上需要达到最接近的价格点,所以例如X.55会下降到X.49和X.84会上升到X.99。
我正在努力研究如何将小数点舍入为.49或.99。jQuery将小数点四舍五入为.49或.99
我找到了toFixed(2)
函数,但不知道如何舍入或舍入。
基本上需要达到最接近的价格点,所以例如X.55会下降到X.49和X.84会上升到X.99。
这不需要jQuery的,但可以用普通的JavaScript来实现:
Math.round(price*2)/2 - 0.01
注意也考虑其中数字会得到四舍五入到0(price
> 0.25)的情况下,因为这将产生-0.01在这种情况下。
Very好的解决方案 – 2011-03-25 10:57:03
这是一种享受。好一个!我会确保在你指出的时候考虑-0.01的可能性。 – diggersworld 2011-03-25 11:09:04
我的事情你不能圆/固定到一个特定号码,您将需要检查/ caclulate的价值,这可能意味着:围捕然后减去1或围捕,再减去51
这并不需要jQuery的。你只需要Math类从JavaScript也四舍五入需要一些addtional减法,因为四舍五入会给最近小数
如果我有一美元的jQuery做的事情比他们需要更钝,每次...
window.round = function(num) {
cents = (num * 100) % 100;
if (cents >= 25 && cents < 75) {
//round x.25 to x.74 -> x.49
return Math.floor(num) + 0.49;
}
if (cents < 25) {
//round x.00 to x.24 -> [x - 1].99
return Math.floor(num) - 0.01;
}
//round x.75 to x.99 -> x.99
return Math.floor(num) + 0.99;
};
阅读[类似概念](http://stackoverflow.com/questions/477892/in-jquery-whats-the-best-way-of-formatting-a-number-to-2-decimal-places) – diEcho 2011-03-25 10:56:19