2011-02-05 114 views
4

我怎样才能使用jQuery将数字四舍五入?jQuery round函数

如果数字是3168我想打印,如第32 或者,如果号码是5233的结果应该是52

我怎么能这样做? 我应该使用Math.round函数吗?

+4

因此,通过圆,你的意思是100和圆形鸿沟? – 2011-02-05 18:01:17

+12

[jQuery基本算术插件](http://www.doxdesk.com/img/updates/20091116-so-large.gif)可以做到这一点,以及更多。 – goat 2012-04-29 05:22:41

+1

@webarto,请不要创建笑话标签。 – Charles 2012-07-28 21:48:02

回答

38

是的,你应该使用Math.round(除以100)。

jQuery是一个DOM遍历,事件处理和基于JavaScript的动画构建的库。它不会替代JavaScript,并且不会重新实现其所有的基本功能。

10
var num = 3168; 
$('#myElement').text(Math.round(num/100)); 

我假设你的意思是除以100,然后轮?还是你的意思是有小数位? (在这种情况下,删除/100部分)

此外,这只是基本的JavaScript。正如另一位用户所提到的,jQuery将使用文档本身,而不是执行数学运算。


这里是从jQuery数学库的一个片段:

(function($){ 
    $.round = Math.round; 
})(jQuery); 

$.round(3168/100) // 32 
$.round(5233/100) // 52 

意味着只有幽默 - 这种功能被提供出来的最-box由JavaScript本身。

1

如果您使用javascript数字对象,则可以使用toFixed()方法。我假设这些数字缺少小数点。如果不是,则除以100并如上所述。

3
<script type='text/javascript'> 
    function jqROund(a) { 
    return Math.round(a/100); 
    } 
</script> 



    <input type='text' id='numba' value='3168'> 
    <input type='button' onclick="alert(jqRound($('#numba').val()) );"> 

Math.round方法完全符合你的要求,不仅限于小区或楼层。它会将其四舍五入到最接近的整数。

1

您可以使用这一个:) roundMe(1.2345, 4)

function roundMe(n, sig) { 
    if (n === 0) return 0; 
    var mult = Math.pow(10, sig - Math.floor(Math.log(n < 0 ? -n: n)/Math.LN10) - 1); 
    return Math.round(n * mult)/mult; 
}