如何在JavaScript中舍入数字?.toFixed()返回字符串?

我在这里想念什么吗?

var someNumber = 123.456;

someNumber = someNumber.toFixed(2);

alert(typeof(someNumber));

//alerts string

.toFixed()返回一个字符串?

我想将数字四舍五入为2个十进制数字。

回答:

它之所以返回一个字符串,是因为在二进制浮点系统中,0.1及其幂(用于显示十进制小数)不能表示(至少不能完全准确)。

例如,0.1确实是0.1000000000000000055511151231257827021181583404541015625,而0.01确实是0.01000000000000000020816681711721685132943093776702880859375。(感谢您BigDecimal证明我的观点。:-P)

因此(缺少十进制浮点数或有理数类型),将其作为字符串输出是将其修整到精确显示所需精度的唯一方法。

以上是 如何在JavaScript中舍入数字?.toFixed()返回字符串? 的全部内容, 来源链接: utcz.com/qa/429772.html

回到顶部