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

Syntax

js
toString()
toString(radix)

Parameter

radix Optional

Eine ganze Zahl im Bereich von 2 bis 36, die die Basis angibt, die zur Darstellung des BigInt-Werts verwendet werden soll. Standardmäßig ist dies 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 Werts in der angegebenen Basis zurück.

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

Wenn der angegebene BigInt-Wert negativ ist, bleibt das Vorzeichen erhalten. Dies ist auch der Fall, wenn die Basis 2 ist; der zurückgegebene String ist die positive binäre Darstellung des BigInt-Werts, der durch ein --Zeichen vorangestellt ist, nicht das Zweierkomplement des BigInt-Werts.

Die toString()-Methode erfordert, dass der this-Wert ein BigInt-Primitive 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 z.B. in einem Template Literal. Allerdings konsultieren BigInt-Primitivwerte nicht die toString()-Methode, um zu Strings umgewandelt zu werden – stattdessen werden sie direkt mit demselben Algorithmus wie die ursprüngliche toString()-Implementierung konvertiert.

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 Null-BigInt

Es gibt kein negatives Null-BigInt, da es keine negativen Nullen bei ganzen Zahlen gibt. -0.0 ist ein IEEE-Floating-Point-Konzept, das nur im JavaScript-Number-Typ auftritt.

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

Spezifikationen

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

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch