Symbol.prototype.description

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.

Die description Accessor-Eigenschaft von Symbol-Werten gibt einen String zurück, der die Beschreibung dieses Symbols enthält, oder undefined, wenn das Symbol keine Beschreibung hat.

Probieren Sie es aus

console.log(Symbol("desc").description);
// Expected output: "desc"

console.log(Symbol.iterator.description);
// Expected output: "Symbol.iterator"

console.log(Symbol.for("foo").description);
// Expected output: "foo"

console.log(`${Symbol("foo").description}bar`);
// Expected output: "foobar"

Beschreibung

Symbol-Objekte können mit einer optionalen Beschreibung erstellt werden, die zum Debuggen verwendet werden kann, jedoch nicht, um auf das Symbol selbst zuzugreifen. Die Eigenschaft Symbol.prototype.description kann verwendet werden, um diese Beschreibung auszulesen. Sie unterscheidet sich von Symbol.prototype.toString(), da sie nicht die einschließende Zeichenkette "Symbol()" enthält. Siehe die Beispiele.

Beispiele

Verwendung der Beschreibung

js
Symbol("desc").toString(); // "Symbol(desc)"
Symbol("desc").description; // "desc"
Symbol("").description; // ""
Symbol().description; // undefined

// well-known symbols
Symbol.iterator.toString(); // "Symbol(Symbol.iterator)"
Symbol.iterator.description; // "Symbol.iterator"

// global symbols
Symbol.for("foo").toString(); // "Symbol(foo)"
Symbol.for("foo").description; // "foo"

Spezifikationen

Specification
ECMAScript® 2025 Language Specification
# sec-symbol.prototype.description

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch