--- title: get RegExp[@@species] slug: Web/JavaScript/Reference/Global_Objects/RegExp/@@species tags: - Expressions rationnelles - JavaScript - Propriété - Prototype - Reference - RegExp translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/@@species original_slug: Web/JavaScript/Reference/Objets_globaux/RegExp/@@species ---
{{JSRef}}

La propriété accesseur RegExp[@@species] renvoie le constructeur RegExp.

{{EmbedInteractiveExample("pages/js/regexp-getregexp-@@species.html")}}

Syntaxe

RegExp[Symbol.species]

Description

L'accesseur species renvoie le constructeur par défaut pour les objets RegExp. Les constructeurs des sous-classes peuvent surcharger ce symbole afin de modifier l'affectation du constructeur.

Exemples

La propriété species renvoie le constructeur par défaut, dans le cas des objets RegExp, c'est le constructeur RegExp :

RegExp[Symbol.species]; // function RegExp()

Pour les objets dérivés (par exemple, une classe MaRegExp), la valeur de species sera le constructeur MaRegExp. Il est possible de surcharger ce comportement afin de renvoyer le constructeur parent RegExp :

class MaRegExp extends RegExp {
  // On surcharge species pour renvoyer
  // le constructeur parent RegExp
  static get [Symbol.species]() { return RegExp; }
}

Spécifications

Spécification État Commentaires
{{SpecName('ES6', '#sec-get-regexp-@@species', 'get RegExp [ @@species ]')}} {{Spec2('ES6')}} Définition initiale.
{{SpecName('ESDraft', '#sec-get-regexp-@@species', 'get RegExp [ @@species ]')}} {{Spec2('ESDraft')}}  

Compatibilité des navigateurs

{{Compat("javascript.builtins.RegExp.@@species")}}

Voir aussi