How to do 64bit Integer arithmetic in Node.js?

Javascript does not support 64 bit integers, because the native number type is a 64-bit double, giving only 53 bits of integer range.

You can create arrays of 32-bit numbers (i.e. Uint32Array) but if there were a 64-bit version of those there'd be no way to copy values from it into standalone variables.

There are some modules around to provide 64bit integer support:

  • node-bigint
  • bignum (based on OpenSSL)
  • int64

Maybe your problem can be solved using one of those libraries.


As of v10.4.0 NodeJS supports the BigInt type natively (see MDN BigInt docs). These support arithmetic operations too.