Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. JavaScript-Referenz
  4. JavaScript-Fehlerreferenz
  5. TypeError: kann x nicht in BigInt umwandeln

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.

View in EnglishAlways switch to English

TypeError: kann x nicht in BigInt umwandeln

Die JavaScript-Ausnahme "x kann nicht in BigInt umgewandelt werden" tritt auf, wenn versucht wird, einenSymbol,null oder einenundefined Wert in einenBigInt zu konvertieren, oder wenn eine Operation, die einen BigInt-Parameter erwartet, stattdessen eine Zahl erhält.

Meldung

TypeError: Cannot convert null to a BigInt (V8-based)TypeError: can't convert null to BigInt (Firefox)TypeError: Invalid argument type in ToBigInt operation (Safari)

Fehlerart

TypeError.

Was ist schiefgelaufen?

Bei der Verwendung derBigInt() Funktion zur Umwandlung eines Wertes in einen BigInt wird der Wert zunächst in einen primitiven Wert umgewandelt. Wenn er dann keiner der Typen BigInt, String, Number oder Boolean ist, wird der Fehler ausgelöst.

Einige Operationen, wie zum BeispielBigInt.asIntN, erfordern, dass der Parameter ein BigInt ist. In diesem Fall wird auch ein Fehler ausgelöst, wenn eine Zahl übergeben wird.

Beispiele

Verwendung von BigInt() auf ungültigen Werten

js
const a = BigInt(null);// TypeError: can't convert null to BigIntconst b = BigInt(undefined);// TypeError: can't convert undefined to BigIntconst c = BigInt(Symbol("1"));// TypeError: can't convert Symbol("1") to BigInt
js
const a = BigInt(1);const b = BigInt(true);const c = BigInt("1");const d = BigInt(Symbol("1").description);

Hinweis:Allein das Umwandeln des Wertes in einen String oder eine Zahl mitString() oderNumber() vor der Übergabe anBigInt() reicht normalerweise nicht aus, um alle Fehler zu vermeiden. Wenn der String keine gültige Ganzzahl-Zeichenkette ist, wird einSyntaxError ausgelöst; wenn die Zahl keine Ganzzahl ist (insbesondereNaN), wird einRangeError ausgelöst. Wenn der Bereich der Eingabe unbekannt ist, validieren Sie ihn ordnungsgemäß, bevor SieBigInt() verwenden.

Übergabe einer Zahl an eine Funktion, die einen BigInt erwartet

js
const a = BigInt.asIntN(4, 8);// TypeError: can't convert 8 to BigIntconst b = new BigInt64Array(3).fill(3);// TypeError: can't convert 3 to BigInt
js
const a = BigInt.asIntN(4, 8n);const b = new BigInt64Array(3).fill(3n);

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2025 Movatter.jp