我想把这个数字增加一个9223372036854775808:
var number = 9223372036854775808;
var plusOne = number + 1;
Run Code Online (Sandbox Code Playgroud)
这应该产生922337203685477580 9,但它产生9223372036854776000.
为什么?更重要的是,我该如何解决这个问题?
在JavaScript中表示的最大数是(2^53) - 1,或写出来,9007199254740991.您拥有的数量9223372036854775808超过该数量的1024倍.
如果要使用大于上面的数字,则应使用大整数库.但是,JavaScript没有内置的,因此您需要自己抓取它.就个人而言,当我处理涉及非常大数字的事情时,我使用大整数,例如Project Euler.
| 归档时间: |
|
| 查看次数: |
87 次 |
| 最近记录: |