1

字符串的 parseFloat 是否对字符串的字符数有限制?我在这里没有看到任何关于限制的信息:https ://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseFloat

但是在控制台中运行以下命令似乎显示了我没想到的结果。

parseFloat('1111111111111111'); // 16 characters long
// result 1111111111111111

parseFloat('11111111111111111'); // 17 characters long
// result 11111111111111112

谁能帮我分解一下?

4

1 回答 1

2

在 Javascript 中,浮点数存储为双精度值。它们有大约 16 位有效数字,这意味着不一定会准确存储 17 位数字。

您可以向 提供任意长度的数字parseFloat(),但无法存储大于 1.79769×10 308的任何数字,这是可以存储在双精度变量中的最大可能值。

如果您有时间,我建议您阅读以下内容:每个计算机科学家都应该知道的关于浮点运算的知识

于 2013-10-27T00:14:53.640 回答