RangeError: BigInt division by zero
L'exception JavaScript "BigInt division by zero" se produit lorsqu'une valeur BigInt
est divisée par 0n
.
Message
RangeError: Division by zero (moteur JavaScript basé sur V8) RangeError: BigInt division by zero (Firefox) RangeError: 0 is an invalid divisor value. (Safari)
Type d'erreur
Quel est le problème ?
Le diviseur utilisé pour une division ou le calcul d'un reste est 0n
. Pour les valeurs de type Number
, la division arithmétique par 0 produit l'infini (Infinity
), mais il n'existe pas de telle valeur infinie avec les grands entiers et une erreur est donc déclenchée. Vérifiez si le diviseur vaut 0n
avant d'effectuer la division.
Exemples
Division par 0n
const a = 1n;
const b = 0n;
const quotient = a / b;
// RangeError: BigInt division by zero
À la place, on vérifiera d'abord si le diviseur vaut 0n
, puis on produira une erreur avec un message plus spécifique ou on fournira un résultat différent avec une valeur comme Infinity
ou undefined
.
const a = 1n;
const b = 0n;
const quotient = b === 0n ? undefined : a / b;