该 ArrayBuffer[@@species]
访问器属性会返回 ArrayBuffer
构造器。
语法
ArrayBuffer[Symbol.species]
描述
这个 species 访问器属性会返回默认的 ArrayBuffer
构造器。子类构造器可能会覆盖它以改变构造器赋值。
示例
返回默认的 ArrayBuffer
构造器:
ArrayBuffer[Symbol.species]; // function ArrayBuffer()
在派生集合对象中(比如你定制的 array buffer MyArrayBuffer
),MyArrayBuffer
species 就是 MyArrayBuffer
构造器。但是,你可能想要在派生类里重写它,以期返回的是父类的 ArrayBuffer
对象:
class MyArrayBuffer extends ArrayBuffer { // Overwrite MyArrayBuffer species to the parent ArrayBuffer constructor static get [Symbol.species]() { return ArrayBuffer; } }
规范
Specification | Status | Comment |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) get ArrayBuffer [ @@species ] |
Standard | Initial definition. |
ECMAScript Latest Draft (ECMA-262) get ArrayBuffer [ @@species ] |
Draft |
浏览器支持
The compatibility table on 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.
Update compatibility data on GitHub
Desktop | Mobile | Server | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
@@species |
Chrome Full support 51 | Edge Full support 13 | Firefox Full support 48 | IE No support No | Opera Full support 38 | Safari ? | WebView Android Full support 51 | Chrome Android Full support 51 | Firefox Android Full support 48 | Opera Android Full support 41 | Safari iOS ? | Samsung Internet Android Full support 5.0 | nodejs Full support 6.5.0
|
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
- User must explicitly enable this feature.
- User must explicitly enable this feature.