我想知道 JavaScript 的浮点限制是什么。我有以下代码不返回详细的浮点结果,如下所示:
2e-2 is the same as 0.02
var numero = 1E-12;
document.write(numero);
返回 1e-12。
JavaScript 可以处理的最大指数结果是多少?
我想知道 JavaScript 的浮点限制是什么。我有以下代码不返回详细的浮点结果,如下所示:
2e-2 is the same as 0.02
var numero = 1E-12;
document.write(numero);
返回 1e-12。
JavaScript 可以处理的最大指数结果是多少?
JavaScript 是 ECMAScript 的实现,在Ecma-262和 ISO/IEC 16262 中指定。Ecma-262 指定使用 IEEE 754 64 位二进制浮点。
在这种格式中,最小的正数是 2 –1074(略高于 4.94e–324),最大的有限数是 2 1024 –2 971(略低于 1.798e308)。可以表示无穷大,因此,从这个意义上说,JavaScript 中数字的值没有上限。
这种格式的数字在其有效数字(小数部分)中最多有 53 位。(低于 2 –1022的数字是次正常的,并且位数较少。)位数有限意味着许多数字无法精确表示,包括示例中的 0.02。因此,算术运算的结果被四舍五入到最接近的可表示值,并且计算链中的错误可能会取消或可能累积,甚至是灾难性的。
该格式还包括一些称为 NaN(表示非数字)的特殊实体。NaN 可用于指示数字尚未初始化,用于特殊调试目的,或表示没有数字适合的操作的结果(例如 –1 的平方根)。
小于零的最大值..?
这里有详细的讨论。基本上,0.00000x 将以指数形式显示(小数点后 5 个零)。
当然,你可以自己测试一下;)特别是看看这种行为是否可靠的跨浏览器。
就个人而言,我认为您不应该担心或依赖这种行为。当你来显示一个数字时,只需适当地格式化它。