Javascript 四舍五入

本文介绍了一种在JavaScript中实现指定小数位数四舍五入的方法,并对比了自定义函数与Number对象的toFixed()方法。

Javascript 中四舍五入的函数是Math.round(), 但该函数只是对第一位小数四舍五入,很多情况下需要的可能是对小数点后的多少位进行四舍五入。为此,我写了一个函数实现该功能功能。

 

function round(num,dec){ 

    var sNum = num + ''; 

    var idx = sNum.indexOf("."); 

     

    if(idx<0)  

        return num; 

     

    var n = sNum.length - idx -1; 

 

    if(dec < n){ 

        var e = Math.pow(10,dec); 

        return Math.round(num * e) / e; 

    }else{ 

        return num; 

    } 

 

var a = 123.3456; 

alert(round(a,3)); 

 

结果:123.346

后来一个问我的同事说他找到了另一个函数,toFixed(); 我在微软的jscript参考上找了很久也没有找到这个函数 ,但发现该函数确实存在,是Number对象的一个方法。

 

 

var num = new Number(123.3456); 

alert(num.toFixed(3)); 

结果:123.346

 

 

显然,这个函数更简单好用。

 

摘自 hongweigg的专栏


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值