JavaScript 实现四舍五入:toFixed 与 Math.round 的区别及用法

作者:木棉时间:2026-10-23 10:29:39浏览:389

本文介绍 JavaScript 中实现四舍五入的两种常用方式。首先解析 toFixed 方法采用的银行家舍入规则(四舍六入五取偶),指出其与常规数学直觉的差异。随后介绍 Math.round 方法符合标准四舍五入逻辑,并通过乘以倍数再除回的方式实现指定小数位的保留,帮助开发者根据需求选择合适方案。

使用 toFixed 方法

1、使用 toFixed 方法

toFixed() 方法可将 Number 类型数值四舍五入为指定的小数位数。例如,若需将数据 Num 保留 2 位小数,可表示为:toFixed(Num);然而,其四舍五入规则与常规数学规则不同,采用的是银行家舍入规则。所谓银行家舍入法,实质是一种四舍六入五取偶(亦称四舍六入五留双)的策略。具体规则如下:

简而言之:四舍六入五考虑,五后非零就进一,五后为零看奇偶,五前为偶应舍去,五前为奇要进一。

显然,该规则不符合日常数据处理习惯。为解决此问题,可自定义使用 Math.round 方法来实现指定保留位数的处理。

使用 round 方法

2、使用 round 方法

round() 方法可将数字舍入为最接近的整数。例如:Math.round(x),即取 x 最接近的整数。其取舍方式遵循标准四舍五入规则,符合数学中的取舍逻辑。虽然对小数处理不够便捷,但可根据不同需求进行自定义处理。

例如:对 X 进行保留两位小数的处理,可使用 Math.round(X * 100) / 100 来实现。

小拓展:我们可以用 Math.max() / Math.min() 判断多个值的最大最小值。利用 ES6 新语法将一个数组解构。

例如 Math.max(number, ...[array])

Math.max(2, ...[2, 3, 11, 24, 1, 66]) 返回值为 66

Math.min 的操作也是相同的。

以上两点内容即为简单实现四舍五入的具体方法,感谢大家的阅读和对本站的支持。

作者最新文章