BigInt.prototype.toString()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2020.

Die toString() Methode von BigInt Werten gibt einen String zurück, der den angegebenen BigInt Wert darstellt. Das abschließende "n" ist nicht Teil des Strings.

Probieren Sie es aus

console.log(1024n.toString());
// Expected output: "1024"

console.log(1024n.toString(2));
// Expected output: "10000000000"

console.log(1024n.toString(16));
// Expected output: "400"

Syntax

js
toString()
toString(radix)

Parameter

radix Optional

Ein Ganzzahlwert im Bereich von 2 bis 36, der die Basis angibt, die zur Darstellung des BigInt-Wertes verwendet werden soll. Standard ist 10.

Rückgabewert

Ein String, der den angegebenen BigInt Wert darstellt.

Ausnahmen

RangeError

Wird ausgelöst, wenn radix kleiner als 2 oder größer als 36 ist.

Beschreibung

Das BigInt Objekt überschreibt die toString Methode von Object; es erbt nicht Object.prototype.toString(). Für BigInt Werte gibt die toString() Methode eine String-Darstellung des Wertes in der angegebenen Basis zurück.

Für Basen über 10 geben die Buchstaben des Alphabets Ziffern größer als 9 an. Zum Beispiel werden für hexadezimale Zahlen (Basis 16) die Buchstaben a bis f verwendet.

Ist der angegebene BigInt-Wert negativ, bleibt das Vorzeichen erhalten. Dies ist sogar dann der Fall, wenn die Basis 2 ist; der zurückgegebene String ist die positive Binärdarstellung des BigInt-Wertes, dem ein - Zeichen vorangestellt ist, nicht der Zweierkomplement des BigInt-Wertes.

Die toString() Methode erfordert, dass ihr this Wert ein BigInt-Prinzipal oder Wrapper-Objekt ist. Sie löst einen TypeError für andere this Werte aus, ohne zu versuchen, sie in BigInt-Werte zu konvertieren.

Da BigInt keine [Symbol.toPrimitive]() Methode hat, ruft JavaScript die toString() Methode automatisch auf, wenn ein BigInt Objekt in einem Kontext verwendet wird, der einen String erwartet, wie zum Beispiel in einem Template Literal. BigInt primitive Werte konsultieren die toString() Methode jedoch nicht, um in Strings umgewandelt zu werden — stattdessen werden sie direkt mit dem gleichen Algorithmus wie die ursprüngliche toString() Implementierung umgewandelt.

js
BigInt.prototype.toString = () => "Overridden";
console.log(`${1n}`); // "1"
console.log(`${Object(1n)}`); // "Overridden"

Beispiele

Verwendung von toString()

js
17n.toString(); // "17"
66n.toString(2); // "1000010"
254n.toString(16); // "fe"
(-10n).toString(2); // "-1010"
(-0xffn).toString(2); // "-11111111"

Negative-Zero BigInt

Es gibt kein Negative-Zero BigInt, da es bei ganzen Zahlen kein negatives Null gibt. -0.0 ist ein IEEE-Gleitpunktkonzept, das nur im JavaScript Number Typ vorkommt.

js
(-0n).toString(); // "0"
BigInt(-0).toString(); // "0"

Spezifikationen

Specification
ECMAScript® 2026 Language Specification
# sec-bigint.prototype.tostring

Browser-Kompatibilität

Siehe auch