このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

RangeError: BigInt division by zero

JavaScript の例外 "BigInt division by zero" は、BigInt0n で割ったときに発生します。

エラーメッセージ

RangeError: Division by zero (V8-based)
RangeError: BigInt division by zero (Firefox)
RangeError: 0 is an invalid divisor value. (Safari)

エラーの種類

RangeError

エラーの原因

除算演算子剰余演算子 の除数が 0n である場合に、このエラーが発生します。Number の計算では Infinity が返されますが、BigInt(値)には Infinity(無限大)を表す値がないため、エラーになります。除算を行う前に、除数が 0n でないことを確認してください。

0n による除算

js
const a = 1n;
const b = 0n;
const quotient = a / b;
// RangeError: BigInt division by zero

代わりに、あらかじめ除数が 0n かどうかを確認し、より分かりやすいエラーメッセージを出すか、Infinityundefined などの別の値にフォールバックしてください。

js
const a = 1n;
const b = 0n;
const quotient = b === 0n ? undefined : a / b;

関連情報