Unable to increment extremely large number by one in JavaScript

I am trying to increase by one number 9223372036854775808::

var number = 9223372036854775808;
var plusOne = number + 1;

This should give 922337203685477580 9 , but instead it will turn out 9223372036854776000.

Why? More importantly, how can I fix this?

+4
source share
2 answers

The largest representable number JavaScript in (2^53) - 1 , or written out 9007199254740991. The number you have is 9223372036854775808more than 1024 times that amount.

, , , . JavaScript , . big-integer, , , Project Euler.

+6

, JavaScript ( ) . , , , , 1 ( ). , , javascript-bignum. , BigInteger.js

+4

All Articles