How to convert BigInt to Number in JavaScript?
Solution 1:
Turns out it's as easy as passing it to the Number
constructor:
const myBigInt = BigInt(10); // `10n` also works
const myNumber = Number(myBigInt);
Of course, you should bear in mind that your BigInt value must be within [Number.MIN_SAFE_INTEGER, Number.MAX_SAFE_INTEGER] for the conversion to work properly, as stated in the question.
Solution 2:
You can use parseInt
or Number
const large = BigInt(309);
const b = parseInt(large);
console.log(b);
const n = Number(large);
console.log(n);
Solution 3:
You should use either of the static methods:
BigInt.asIntN()
- Clamps a BigInt value to a signed integer value, and returns that value.
BigInt.asUintN()
- Clamps a BigInt value to an unsigned integer value, and returns that value.
as documented here: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt#static_methods