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 ] の定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung InternetNode.js
@@speciesChrome 完全対応 51Edge 完全対応 13Firefox 完全対応 48IE 未対応 なしOpera 完全対応 38Safari 完全対応 10WebView Android 完全対応 51Chrome Android 完全対応 51Firefox Android 完全対応 48Opera Android 完全対応 41Safari iOS 完全対応 10Samsung Internet Android 完全対応 5.0nodejs 完全対応 6.5.0
完全対応 6.5.0
完全対応 6.0.0
無効
無効 From version 6.0.0: this feature is behind the --harmony runtime flag.

凡例

完全対応  
完全対応
未対応  
未対応
ユーザーが明示的にこの機能を有効にしなければなりません。
ユーザーが明示的にこの機能を有効にしなければなりません。

関連情報