get TypedArray[@@species]

TypedArray[@@species] アクセッサプロパティは、typed array のコンストラクタを返します。

説明

species アクセッサプロパティは、typed array オブジェクトの既定のコンストラクタを返します。サブクラスのコンストラクタは、コンストラクタの割り当てを変更するために、これをオーバーライドできます。

普通のオブジェクト

species プロパティは、指定した typed array オブジェクトの typed array コンストラクタを既定のコンストラクタ関数として返します。

Int8Array[Symbol.species];    // function Int8Array()
Uint8Array[Symbol.species];   // function Uint8Array()
Float32Array[Symbol.species]; // function Float32Array()

派生オブジェクト

派生コレクションオブジェクト(たとえば、カスタム typed array の MyTypedArray)では、MyTypedArray の species は MyTypedArray コンストラクタです。しかし、派生クラスのメソッドで、親である typed array オブジェクトを返すためにこれをオーバーライドしたいかもしれません。

class MyTypedArray extends Uint8Array {
  // MyTypedArray の species を親である Uint8Array コンストラクタにオーバーライド
  static get [Symbol.species]() { return Uint8Array; }
}

仕様書

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

ブラウザーの互換性

BCD tables only load in the browser

関連情報