この記事は編集レビューを必要としています。ぜひご協力ください。
RegExp[@@species]
アクセッサプロパティは、RegExp
コンストラクタを返します。
構文
RegExp[Symbol.species]
説明
species
アクセッサプロパティは、RegExp
の既定のコンストラクタを返します。サブクラスのコンストラクタは、コンストラクタの割り当てをオーバーラードするためにこれを使用できます。
例
species
プロパティは、既定のコンストラクタを返します。RegExp
オブジェクトであれば、RegExp
コンストラクタを返します:
RegExp[Symbol.species]; // function RegExp()
派生クラスのコレクションオブジェクト(たとえば、カスタム regexp の MyRegExp
)では、MyRegExp
species は MyRegExp
コンストラクタです。しかし、派生クラスのメソッドで親である RegExp
オブジェクトを返すようにこれをオーバーライドしたいかもしれません:
class MyRegExp extends RegExp { // MyRegExp species を親である RegExp コンストラクタにオーバーライド。 static get [Symbol.species]() { return RegExp; } }
仕様
仕様 | 状態 | コメント |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) get RegExp [ @@species ] の定義 |
標準 | 初期定義。 |
ECMAScript 2017 Draft (ECMA-262) get RegExp [ @@species ] の定義 |
ドラフト |
ブラウザ実装状況
機能 | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
基本サポート | ? | 49 (49) | ? | ? | ? |
機能 | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
基本サポート | ? | ? | 49.0 (49) | ? | ? | ? |