JS symbol description
**description**
是一个只读属性,它会返回 Symbol
对象的可选描述的字符串。
The source for this interactive example is stored in a GitHub repository. If you’d like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
语法
Symbol('myDescription').description;
Symbol.iterator.description;
Symbol.for('foo').description;
描述
Symbol
对象可以通过一个可选的描述创建,可用于调试,但不能用于访问 symbol 本身。Symbol.prototype.description
属性可以用于读取该描述。与 Symbol.prototype.toString()
不同的是它不会包含 “Symbol()
” 的字符串。具体请看实例。
实例
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"
规范
Specification | Status |
---|---|
[get Symbol.prototype.description](https://tc39.github.io/proposal-Symbol-description/#sec-symbol.prototype.description) proposal |
Stage 3 |