为什么JS使用科学(指数)符号?

时间:2017-09-23 01:22:19

标签: javascript numbers computer-science

当我使用固定符号键入大数字时,JS将其更改为科学记数法。为什么?难道只是因为难以读取大数字,或者它与存储大数字的困难有什么关系?

2 个答案:

答案 0 :(得分:1)

ECMA规范定义了如何将数字转换为字符串(这是您唯一能够看到科学记数法的时间)。

规范的相关部分在这里:https://www.ecma-international.org/ecma-262/8.0/index.html#sec-tostring-applied-to-the-number-type

据我所知,科学记数法的数字大于10 ^ 21或小于10 ^ -6

答案 1 :(得分:1)

在Javascript中,数字始终存储为浮点数并遵循IEEE 754's format。至于显示数字,Javascript使用Dancrumb提到的ECMAScript显示算法,该算法定义何时开始以科学记数法格式呈现数字。

如果您想避免使用大数字的科学记数法,可以通过以下方式讨论这些问题:How to avoid scientific notation for large numbers in JavaScript?