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; }
}

仕様書

仕様書
ECMAScript (ECMA-262)
get ArrayBuffer [ @@species ] の定義

ブラウザーの互換性

BCD tables only load in the browser

関連情報