JavaScript 四舍五入(Math.round实现) 作者:马育民 • 2024-10-04 11:01 • 阅读:10009 # 不能使用 toFixed() 不能使用 `toFixed()` 实现四舍五入,详见: https://www.malaoshi.top/show_1IX8XmpDvvwM.html # 说明 Math.round()可把一个数字舍入为最接近的 **整数**,也就是我们意义上的 **四舍五入**,但是 **只能取整数部分**。 因此我们可以将数字 **乘100**,使用round()获得四舍五入得到的整数部分,然后再 **除100** 即可。 ``` Math.round(num* 100) / 100 ``` 但是这个方法也是有缺陷的,当待处理数字小数点后位数不够你要保留的位数的时候,就实效了 例如:`3.1`保留使用这个方法就只会显示 `3.1`;`100.00`使用这个方法处理后就会变成 `100` 如果要保留两位小数,这个就可以结合 `num.toFixed(2)`,返回字符串,不足两位小数,在后面补0 ``` let num = 3.1 num = Math.round(num* 100) / 100. const numStr = num.toFixed(2); console.log(numStr,typeof(numStr)) ``` 参考: https://blog.csdn.net/qq_36667170/article/details/104830873 原文出处:http://malaoshi.top/show_1IX8XmxOoTXy.html