get ArrayBuffer[@@species]
ArrayBuffer[@@species]
アクセサープロパティは、ArrayBuffer
コンストラクターを返します。
解説
species アクセサープロパティは、既定のコンストラクターである ArrayBuffer
オブジェクトを返します。サブクラスのコンストラクターはコンストラクターに代入することで、これをオーバーライドできます。
例
通常のオブジェクトの spicies
species プロパティは、ArrayBuffer
オブジェクトの既定のコンストラクター関数である ArrayBuffer
コンストラクターを返します。
ArrayBuffer[Symbol.species]; // ArrayBuffer() 関数
派生オブジェクトの spicies
派生コレクションオブジェクト (たとえば、独自の配列バッファーである MyArrayBuffer
) では、MyArrayBuffer
の species は MyArrayBuffer
コンストラクターです。しかし、派生クラスのメソッドで、親である ArrayBuffer
オブジェクトを返すためにこれをオーバーライドしたいかもしれません。
class MyArrayBuffer extends ArrayBuffer {
// MyArrayBuffer species を親である ArrayBuffer コンストラクタにオーバーライド。
static get [Symbol.species]() { return ArrayBuffer; }
}
仕様書
Specification |
---|
ECMAScript Language Specification # sec-get-arraybuffer-@@species |
ブラウザーの互換性
BCD tables only load in the browser