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 Zugriffs-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 Debugging genutzt werden kann, aber nicht, um auf das Symbol selbst zuzugreifen. Die Symbol.prototype.description-Eigenschaft kann verwendet werden, um diese Beschreibung auszulesen. Sie unterscheidet sich von Symbol.prototype.toString(), da sie nicht den umschließenden "Symbol()"-String enthält. Siehe die Beispiele.

Beispiele

Verwendung von description

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

Siehe auch