Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. JavaScript-Referenz
  4. Eingebaute Standardobjekte
  5. Symbol
  6. toString()

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

View in EnglishAlways switch to English

Symbol.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 2015⁩.

DietoString()-Methode vonSymbol-Werten gibt einen String zurück, der diesen Symbolwert repräsentiert.

Probieren Sie es aus

console.log(Symbol("desc").toString());// Expected output: "Symbol(desc)"console.log(Symbol.iterator.toString());// Expected output: "Symbol(Symbol.iterator)console.log(Symbol.for("foo").toString());// Expected output: "Symbol(foo)"// console.log(Symbol('foo') + 'bar');// Expected output: Error: Can't convert symbol to string

Syntax

js
toString()

Parameter

Keine.

Rückgabewert

Ein String, der den angegebenen Symbolwert repräsentiert.

Beschreibung

DasSymbol-Objekt überschreibt dietoString-Methode vonObject; es erbt nicht vonObject.prototype.toString(). FürSymbol-Werte gibt dietoString-Methode einen beschreibenden String in der Form"Symbol(description)" zurück, wobeidescription dieBeschreibung des Symbols ist.

DietoString()-Methode erfordert, dass ihrthis-Wert einSymbol-Primitiv oder Wrapper-Objekt ist. Sie löst einenTypeError für anderethis-Werte aus, ohne zu versuchen, sie in Symbolwerte umzuwandeln.

DaSymbol eine[Symbol.toPrimitive]()-Methode hat, hat diese Methode immer Vorrang vortoString(), wenn einSymbol-Objektin einen String umgewandelt wird. Da jedochSymbol.prototype[Symbol.toPrimitive]() ein Symbol-Primitiv zurückgibt und Symbol-Primitiven einenTypeError auslösen, wenn sie implizit in einen String konvertiert werden, wird dietoString()-Methode vom Sprachmodus nie implizit aufgerufen. Um ein Symbol in einen String umzuwandeln, müssen Sie entweder explizit seinetoString()-Methode aufrufen oder dieString()-Funktion verwenden.

Beispiele

Verwendung von toString()

js
Symbol("desc").toString(); // "Symbol(desc)"// well-known symbolsSymbol.iterator.toString(); // "Symbol(Symbol.iterator)"// global symbolsSymbol.for("foo").toString(); // "Symbol(foo)"

Impliziter Aufruf von toString()

Die einzige Möglichkeit, um JavaScript dazu zu bringen,toString() statt[Symbol.toPrimitive]() auf einem Symbol-Wrapper-Objekt implizit aufzurufen, besteht darin, die[Symbol.toPrimitive]()-Methode zuerst zulöschen.

Warnung:Sie sollten dies in der Praxis nicht tun. Verändern Sie niemals eingebaute Objekte, es sei denn, Sie wissen genau, was Sie tun.

js
delete Symbol.prototype[Symbol.toPrimitive];console.log(`${Object(Symbol("foo"))}`); // "Symbol(foo)"

Spezifikationen

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

Browser-Kompatibilität

Siehe auch

Help improve MDN

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

[8]ページ先頭

©2009-2025 Movatter.jp