不能使用 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