为什么 toFixed()
对于以下情况,没有达到预期的效果?解决方法是什么?
代码。
var num = 5.56789;
var n = num.toFixed(16);
console.log(num)
console.log(n)
期望值n: 5.5678900000000000
n的实际值 5.5678900000000002
注:
你几乎已经回答了自己的问题,javascript Number类是一个64位的浮点值,而你所说的数字超出了给定的64位所允许的精度。为了绕过这个限制,一个类似于 https:/github.communrocketdouble.js。 会让你获得最高128位的精度。