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 Methode toString() von BigInt-Werten gibt eine Zeichenkette zurück, die den angegebenen BigInt-Wert darstellt. Das abschließende "n" ist nicht Teil der Zeichenkette.

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

Eine Ganzzahl im Bereich von 2 bis 36, die die Basis für die Darstellung des BigInt-Wertes angibt. Standardmäßig wird Basis 10 verwendet.

Rückgabewert

Eine Zeichenkette, die 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 von Object.prototype.toString(). Für BigInt-Werte gibt die Methode toString() eine Zeichenkettenrepräsentation des Wertes in der angegebenen Basis zurück.

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

Wenn der angegebene BigInt-Wert negativ ist, bleibt das Vorzeichen erhalten. Dies ist auch dann der Fall, wenn die Basis 2 (binär) ist; die zurückgegebene Zeichenkette ist die positive binäre Darstellung des BigInt-Wertes, vorangestellt von einem --Zeichen, nicht die Zweierkomplement-Darstellung des BigInt-Wertes.

Die toString()-Methode erfordert, dass ihr this-Wert ein BigInt-Primitive oder Wrapper-Objekt ist. Sie löst einen TypeError aus, wenn andere this-Werte verwendet werden, ohne zu versuchen, sie in BigInt-Werte umzuwandeln.

Da BigInt keine [Symbol.toPrimitive]()-Methode hat, ruft JavaScript die toString()-Methode automatisch auf, wenn ein BigInt-Objekt in einem Kontext verwendet wird, der eine Zeichenkette erwartet, wie etwa in einem Template-Literal. BigInt-Primitive-Werte konsultieren jedoch nicht die toString()-Methode, um in Zeichenketten umgewandelt zu werden — stattdessen werden sie direkt mithilfe des gleichen Algorithmus wie bei der anfänglichen toString()-Implementierung konvertiert.

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

Beispiele

Benutzung von toString()

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

Negative-Null-BigInt

Es gibt keine negative Null bei BigInt, da es keine negativen Nullen in Ganzzahlen gibt. -0.0 ist ein Konzept des IEEE-Gleitkommaformats, das nur im JavaScript-Number-Typ vorkommt.

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

Spezifikationen

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

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
toString

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

Siehe auch