RangeError: BigInt division by zero

Ngoại lệ JavaScript "BigInt division by zero" xảy ra khi một BigInt được chia cho 0n.

Thông báo

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

Loại lỗi

RangeError.

Nguyên nhân?

Số chia của phép tính chia hoặc chia lấy dư0n. Trong phép tính số Number, điều này tạo ra Infinity, nhưng không có "giá trị vô cùng" trong BigInts, vì vậy một lỗi được phát sinh. Hãy kiểm tra xem số chia có phải là 0n không trước khi thực hiện phép chia.

Ví dụ

Chia cho 0n

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

Thay vào đó, hãy kiểm tra xem số chia có phải là 0n không trước, và hoặc phát ra lỗi với thông báo tốt hơn, hoặc quay về một giá trị khác, chẳng hạn Infinity hoặc undefined.

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

Xem thêm