Array[@@species]
访问器属性返回 Array
的构造函数。
语法
Array[Symbol.species]
返回值
Array
的构造函数。
描述
species
访问器属性返回 Array
对象的默认构造函数。子类的构造函数可能会覆盖并改变构造函数的赋值。
示例
species
属性返回默认构造函数, 它用于 Array
对象的构造函数 Array
:
Array[Symbol.species]; // function Array()
在继承类的对象中(例如你自定义的数组 MyArray
),MyArray
的 species
属性返回的是 MyArray
这个构造函数. 然而你可能想要覆盖它,以便在你继承的对象 MyArray
中返回父类的构造函数 Array
:
class MyArray extends Array {
// 重写 MyArray 的 species 属性到父类 Array 的构造函数
static get [Symbol.species]() { return Array; }
}
规范
规范 | 状态 | 备注 |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) get Array [ @@species ] |
Standard | Initial definition. |
ECMAScript (ECMA-262) get Array [ @@species ] |
Living Standard |
浏览器兼容性
BCD tables only load in the browser
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.