Map[Symbol.species]
Map[Symbol.species] 静态访问器属性是一个未使用的访问器属性,用于指定如何复制 Map 对象。
语法
js
Map[Symbol.species]
返回值
调用 get [Symbol.species] 时的构造函数(this)的值。返回值用于构造复制的 Map 实例。
描述
[Symbol.species] 访问器属性返回 Map 对象的默认构造函数。子类构造函数可以覆盖它以更改构造函数分配。
注意: 此属性当前未被所有 Map 方法使用。
示例
普通对象中的 species
[Symbol.species] 属性返回默认构造函数,即 Map 的 Map 构造函数。
js
Map[Symbol.species]; // function Map()
派生对象中的 species
在自定义 Map 子类的实例中,例如 MyMap,MyMap 的 species 是 MyMap 构造函数。但是,您可能希望覆盖它,以便在派生类方法中返回父 Map 对象。
js
class MyMap extends Map {
// Overwrite MyMap species to the parent Map constructor
static get [Symbol.species]() {
return Map;
}
}
规范
| 规范 |
|---|
| ECMAScript® 2026 语言规范 # sec-get-map-%symbol.species% |
浏览器兼容性
加载中…