JavaScript基礎データ型NumberとBigIntの理解と活用方法

はじめに

JavaScriptにおいて、数値を扱うためにはNumberとBigIntの2つのデータ型があります。それぞれの基本的な特性や使い方について解説していきます。

JavaScriptにおけるデータ型とは

JavaScriptには、文字列や数値、真偽値などのデータ型があります。それぞれのデータ型には、特定の値を扱うための機能や特性があります。JavaScriptは動的型付け言語であるため、変数の値によって自動的にデータ型が変化することがあります。

Number型の基本的な特性と使い方

Number型は、JavaScriptにおいて最も基本的な数値のデータ型です。整数や浮動小数点数を扱うことができます。

Number型の基本的な使い方は、以下の通りです。

let num1 = 123; // 整数
let num2 = 3.14; // 浮動小数点数

また、Number型でよく使われるメソッドには、以下のようなものがあります。

  • toFixed():指定した桁数に丸めた値を返します。
  • toPrecision():指定した桁数に丸めた値を返します。
  • toString():数値を文字列に変換します。
  • parseInt():文字列を整数に変換します。
  • parseFloat():文字列を浮動小数点数に変換します。

BigInt型の導入とその必要性

JavaScriptのNumber型は、2^53-1(約900京)までの整数しか扱えません。このため、より大きな整数を扱いたい場合はBigInt型を使う必要があります。

BigInt型は、以下のように導入されます。

let bigInt = 123456789012345678901234567890n;

なお、BigInt型でよく使われる演算子には、以下のようなものがあります。

  • +:加算
  • -:減算
  • *:乗算
  • /:除算
  • %:剰余
  • **:累乗

BigInt型の基本的な特性と使い方

BigInt型は、Number型と異なり、演算時に丸め誤差が発生しません。また、Number型と同様に、基本的な四則演算や比較演算が可能です。

BigInt型の基本的な使い方は、以下の通りです。

let bigInt1 = 123456789012345678901234567890n;
let bigInt2 = BigInt("987654321098765432109876543210");
console.log(bigInt1 + bigInt2); // 1111111110111111111011111111100n

NumberとBigIntの違いと使い分け

Number型とBigInt型の違いは、数値の扱える範囲や精度にあります。Number型は、一般的な数値計算には十分ですが、より大きな数値や高精度の計算が必要な場合にはBigInt型を使う必要があります。

例えば、以下のような計算を行う場合、Number型では誤差が発生しますが、BigInt型では正確な結果を得ることができます。

console.log(0.1 + 0.2); // 0.30000000000000004
console.log((0.1 * 10 + 0.2 * 10) / 10); // 0.3
let bigInt1 = 123456789012345678901234567890n;
let bigInt2 = BigInt("987654321098765432109876543210");
console.log(bigInt1 + bigInt2); // 1111111110111111111011111111100n

まとめ

JavaScriptにおいて、数値を扱うためにはNumber型とBigInt型の2つのデータ型があります。それぞれの基本的な特性や使い方を理解し、適切に使い分けることが大切です。