【JavaScript ECMAScript】RangeError: BigInt negative exponentエラーの使い方
RangeError: BigInt negative exponentエラーの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
RangeError: BigInt negative exponentクラスは、JavaScriptにおいてBigInt型の数値に負の指数を用いたべき乗演算を行った際に発生するエラーを表すクラスです。BigInt型は、Number型では表現できない非常に大きな整数を扱うために導入された新しいデータ型で、任意精度の整数を表現できます。
しかし、BigInt型は小数点以下の値を表現することができません。このため、べき乗演算において指数として負のBigInt値(例: 2n ** -2n)を使用すると、数学的には 1 / (2n ** 2n)、つまり 1 / 4n のような分数となり、結果が小数点を含む値になります。BigIntはこのような小数値を扱えないため、JavaScriptエンジンはこの操作を不正と判断し、RangeError: BigInt negative exponent を発生させ、プログラムの実行を停止させます。
システムエンジニアを目指す初心者の皆様は、BigInt型の制約として、負の指数を用いたべき乗演算が許可されていないことを覚えておく必要があります。もし負の指数による計算が必要な場合は、BigInt型ではなくNumber型に変換して計算するか、または別途割り算などのロジックを実装して対応してください。このエラーは、BigIntの設計上の特性に基づいた正常な挙動です。
公式リファレンス: RangeError: BigInt negative exponent
構文(syntax)
12n ** -1n
引数(parameters)
引数なし
引数はありません
戻り値(return)
戻り値なし
戻り値はありません