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 January 2020.
Thuộc tính accessor description của các giá trị Symbol trả về một chuỗi chứa mô tả của symbol này, hoặc undefined nếu symbol không có mô tả.
Try it
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"
Mô tả
Các đối tượng Symbol có thể được tạo với một mô tả tùy chọn, có thể dùng để debug nhưng không thể truy cập bản thân symbol. Thuộc tính Symbol.prototype.description có thể được dùng để đọc mô tả đó. Nó khác với Symbol.prototype.toString() vì nó không chứa chuỗi bao quanh "Symbol()". Xem ví dụ.
Ví dụ
>Sử dụng 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"
Đặc tả
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-symbol.prototype.description> |