JS—toFixed()

本文探讨了JavaScript的toFixed()方法用于四舍五入数字到指定小数位的功能,包括正常情况下的使用示例,如保留两位小数和自动补全不足的小数位。还指出在不同浏览器(如IE和Firefox)中该方法处理进位时存在的差异,以及这些差异可能导致的不一致结果。最后,提到了JavaScript中浮点数运算的二进制精度问题,并提供了相关解决方案的链接。
摘要由CSDN通过智能技术生成

一、toFixed() : 可把 Number 四舍五入为指定小数位数的数字
操作对象:number
参数:0-20的数字,0表示返回整数字符串,1表示返回一位小数,以此内推
返回值:string

二、找例子
1、保留两位小数,并且四舍五入

var num = 5.56789;
var n=num.toFixed(2);
console.log(n)
// 5.57

2、当小数位不足,用0自动补全

var num = 5.56789;
var n=num.toFixed(10);
console.log(n)// 5.5678900000

3.在IE 下和FF 下对于小数的进位有点不同。
例如( 0.005)在ie 下 toFix(2)=0.00. 在FF 下 toFix(2)=0.01

0.005.toFix(2)   // ie  0.00
0.005.toFix(2)   //  FF  0.01

https://m.jb51.net/article/47760.htm

4、不同浏览器渲染结果不同

// chrome
1.35.toFixed(1) // 1.4 正确
1.335.toFixed(2) // 1.33  错误
1.3335.toFixed(3) // 1.333 错误
1.33335.toFixed(4) // 1.3334 正确
1.333335.toFixed(5)  // 1.33333 错误
1.3333335.toFixed(6) // 1.333333 错误
// IE
1.35.toFixed(1) // 1.4 正确
1.335.toFixed(2) // 1.34  正确
1.3335.toFixed(3) // 1.334 正确
1.33335.toFixed(4) // 1.3334 正确
1.333335.toFixed(5)  // 1.33334 正确
1.3333335.toFixed(6) // 1.333334 正确

解决办法:https://blog.csdn.net/qq_40805231/article/details/101271638

5、二进制导致精度问题

console.log(2.115 * 100) // 211.50000000000003
console.log(2.0115 * 1000) // 2011.4999999999998

解决办法:https://blog.csdn.net/qq_40805231/article/details/101271638

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

帝博格T-bag

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值