我无法弄清JavaScript中100000000000000030/10 = 10000000000000004
的原因,在其他问题中也没有看到这个问题。
<script>
alert(100000000000000030/10);
</script>
答案 0 :(得分:4)
在进行此计算之前,您可能想知道此数字是否是安全的javascript数字。您可以使用-Number.isSafeInteger(100000000000000030)知道这一点。
“ MAX_SAFE_INTEGER常数的值为9009199254740991(9,007,199,254,740,991或〜9千位数)。该数字背后的原因是JavaScript使用IEEE 754中指定的双精度浮点格式数字,并且只能安全地表示- (253-1)和253-1。“
您可能还想在这里阅读更多内容-Division and remainder of large numbers in JavaScript