Math.round(123.45)
结果是 123,它是四舍五入到整数,无法到小数,也就是说我们无法直接使用它实现保留 2 位小数。返回的数据类型是数字。
但是 toFixed 似乎可以?
123.45.toFixed(1),结果是 123.5,返回的数据类型是字符串,小数位数不足会补 0,但位数超长,比如 20,后面就不是补 0 了,可能是补 999999995 一类的,但是,这都不是问题,问题是 JavaScript 中数字并不是精确的,请参见:四舍五入遇 5 往哪靠?-JavaScript toFixed 根本不必研究往奇靠、往偶靠。
怎么解决?