栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > Web开发 > JavaScript

js四舍五入的函数

JavaScript 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

js四舍五入的函数

在数据的处理中,我们有着越来越高的简化并且精准的需求,四舍五入是个不错的选择。哪么大家知道js中有哪些函数可以四舍五入吗?今天整理了round和toFixed函数,在四舍五入上都有相关的运用,在此之前我们先简单理解四舍五入的概念,一起来看如下内容。

1.四舍五入概念

因为四舍五入,舍入的数为0时,舍后就是这个数本身,而1-9共9个数,5处于中间,如果5-9都进一,进一的概率是九分之五,而1-4舍去,概率是九分之四,在累加时会使整体误差偏大。

银行家舍入法的具体算法:

四舍六入五考虑,五后非零就进一,

五后为零看奇偶,五前为偶应舍去,五前为奇要进一

2.round函数

round(number,num_digits),number就是要四舍五入的数字了,num_digits呢,就是要进行四舍五入运算的位数。

num_digits大于0,则将数字四舍五入到指定的小数位数

num_digits等于0,数字四舍五入进行取整

num_digits小于0,四舍五入到小数点左边的相应位数

var num = 10.1
console.log(Math.round(num)) // 10
var num2 = 10.6
console.log(Math.round(num2)) // 11

3.toFixed函数

toFixed() 方法可把 Number 四舍五入为指定小数位数的数字,属于银行家舍入法,通俗点就是传入的参数是几,那么我们的小数就保留几位。

 //重写toFixed方法
    Number.prototype.toFixed=function(len)
    {
        var tempNum = 0;
        var s,temp;
        var s1 = this + "";
        var start = s1.indexOf(".");
        
        //截取小数点后,0之后的数字,判断是否大于5,如果大于5这入为1
 
       if(s1.substr(start+len+1,1)>=5)
        tempNum=1;
 
        //计算10的len次方,把原数字扩大它要保留的小数位数的倍数
      var temp = Math.pow(10,len);
        //求最接近this * temp的最小数字
        //floor() 方法执行的是向下取整计算,它返回的是小于或等于函数参数,并且与之最接近的整数
        s = Math.floor(this * temp) + tempNum;
        return s/temp;
 
}

以上就是js中关于四舍五入函数的介绍,想更多了解round和toFixed函数,可以看一下之前的文章,这里就不再详细讲解了。更多js学习指路:js教程

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/14834.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号