📜  js如何四舍五入2位小数 - Javascript(1)

📅  最后修改于: 2023-12-03 15:17:05.801000             🧑  作者: Mango

JS如何四舍五入2位小数 - Javascript

在JS中,有时候我们需要对一个数进行四舍五入,并且只保留2位小数。这时候,我们可以使用JS中提供的内置函数toFixed()。本文将介绍如何使用toFixed()来实现四舍五入保留2位小数。

使用toFixed()函数

toFixed()函数可以接收一个整数参数,这个整数参数表示要保留的小数位数。如果被保留的位数大于原数的小数位数,则用0来补齐。

var num = 123.4567;
console.log(num.toFixed(2)); //输出 123.46
console.log(num.toFixed(0)); //输出 123
console.log(num.toFixed(5)); //输出 123.45670
注意事项

虽然toFixed()函数可以很方便地进行四舍五入并保留指定位数的操作,但是需要注意以下几点:

  1. toFixed()返回的是一个字符串类型的值,而不是一个数值类型的值。因此需要根据实际情况使用Number()或者parseFloat()来将其转换为数值类型。

  2. 在进行四舍五入的时候,需要注意JS中浮点数存在精度误差的问题。例如:

console.log((0.1 + 0.2).toFixed(1)); //输出0.3,正常
console.log((0.7 + 0.1).toFixed(1)); //输出0.8,正常
console.log((0.6 + 0.1).toFixed(1)); //输出0.7,不正常,应该输出0.8

在进行高精度计算时,建议使用第三方库decimal.js。

示例代码
function round(num) {
  return parseFloat(num.toFixed(2));
}

console.log(round(1.234567)); //输出1.23
console.log(round(2.568)); //输出2.57