BigIntは、非常に大きな整数を扱うためのJavaScriptのデータ型です。通常の数値を扱うNumberでは、整数を正確に表せる範囲に上限があります。範囲を超える整数を正確に扱いたいときにBigIntを使います。
整数リテラルの末尾に n を付けるか、BigInt()を使って値を作成します。
JavaScript
const population = 9007199254740993n;
const anotherPopulation = BigInt("9007199254740993");
console.log(population);
console.log(typeof population); // bigint
Numberで正確に扱える最大の整数は 9007199254740991 です。これより大きな整数を正確に扱う必要がある場合は、BigIntを検討します。
ただし、BigIntとNumberは別の型です。異なる型をそのまま加算することはできないため、計算する値の型をそろえます。
JavaScript
const a = 10n;
const b = 20n;
console.log(a + b); // 30n
// 10n + 20 はエラーになる
// BigIntとNumberを混ぜて計算しない