SyntaxError: invalid BigInt syntax

當字串值被強制轉換為 BigInt 但未能解析為整數時,會發生 JavaScript 異常“invalid BigInt syntax”。

訊息

SyntaxError: Cannot convert x to a BigInt (V8-based)
SyntaxError: invalid BigInt syntax (Firefox)
SyntaxError: Failed to parse String to BigInt (Safari)

錯誤型別

SyntaxError.

哪裡出錯了?

當使用 BigInt() 函式將字串轉換為 BigInt 時,字串將以與原始碼相同的方式進行解析,並且結果值必須是整數值。

示例

無效案例

js
const a = BigInt("1.5");
const b = BigInt("1n");
const c = BigInt.asIntN(4, "8n");
// SyntaxError: invalid BigInt syntax

有效情況

js
const a = BigInt("1");
const b = BigInt("  1   ");
const c = BigInt.asIntN(4, "8");

另見