diff options
author | julieng <julien.gattelier@gmail.com> | 2021-08-03 08:03:23 +0200 |
---|---|---|
committer | SphinxKnight <SphinxKnight@users.noreply.github.com> | 2021-09-03 08:08:25 +0200 |
commit | bf8e099b9c8b3c60d60b3712b4fc97b052c39887 (patch) | |
tree | c101746d082c9581c94f5937519c7d0e2f4af8cb /files/fr/web/javascript/reference/global_objects/reflect/index.md | |
parent | 844f5103992238c0c23203286dad16a466e89c97 (diff) | |
download | translated-content-bf8e099b9c8b3c60d60b3712b4fc97b052c39887.tar.gz translated-content-bf8e099b9c8b3c60d60b3712b4fc97b052c39887.tar.bz2 translated-content-bf8e099b9c8b3c60d60b3712b4fc97b052c39887.zip |
convert content to md
Diffstat (limited to 'files/fr/web/javascript/reference/global_objects/reflect/index.md')
-rw-r--r-- | files/fr/web/javascript/reference/global_objects/reflect/index.md | 103 |
1 files changed, 42 insertions, 61 deletions
diff --git a/files/fr/web/javascript/reference/global_objects/reflect/index.md b/files/fr/web/javascript/reference/global_objects/reflect/index.md index b61cb63280..a00114cb15 100644 --- a/files/fr/web/javascript/reference/global_objects/reflect/index.md +++ b/files/fr/web/javascript/reference/global_objects/reflect/index.md @@ -9,76 +9,57 @@ tags: translation_of: Web/JavaScript/Reference/Global_Objects/Reflect original_slug: Web/JavaScript/Reference/Objets_globaux/Reflect --- -<div>{{JSRef}}</div> +{{JSRef}} -<p><code><strong>Reflect</strong></code> est un objet natif qui fournit des méthodes pour les opérations qui peuvent être interceptées en JavaScript (via les proxies). Les méthodes de cet objet sont les mêmes que celles des <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Proxy/handler">gestionnaires de proxy</a>. <code>Reflect</code> n'est pas une fonction (y compris pour construire un objet).</p> +**`Reflect`** est un objet natif qui fournit des méthodes pour les opérations qui peuvent être interceptées en JavaScript (via les proxies). Les méthodes de cet objet sont les mêmes que celles des [gestionnaires de proxy](/fr/docs/Web/JavaScript/Reference/Objets_globaux/Proxy/handler). `Reflect` n'est pas une fonction (y compris pour construire un objet). -<h2 id="Description">Description</h2> +## Description -<p>Contrairement à la plupart des objets globaux, <code>Reflect</code> n'est pas un constructeur. Il ne peut pas être utilisé avec l'opérateur {{jsxref("Opérateurs/L_opérateur_new","new")}} ou être invoqué comme une fonction. Les propriétés et méthodes de <code>Reflect</code> sont statiques (comme pour celles de l'objet {{jsxref("Math")}}).</p> +Contrairement à la plupart des objets globaux, `Reflect` n'est pas un constructeur. Il ne peut pas être utilisé avec l'opérateur {{jsxref("Opérateurs/L_opérateur_new","new")}} ou être invoqué comme une fonction. Les propriétés et méthodes de `Reflect` sont statiques (comme pour celles de l'objet {{jsxref("Math")}}). -<h2 id="Méthodes">Méthodes</h2> +## Méthodes -<p>L'objet <code>Reflect</code> fournit des fonctions statiques qui ont les mêmes noms que les méthodes des <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Proxy/handler">gestionnaires de proxy</a> et dont certaines correspondent, <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Reflect/Comparing_Reflect_and_Object_methods">avec quelques différences</a>, à celles d'{{jsxref("Object")}} :</p> +L'objet `Reflect` fournit des fonctions statiques qui ont les mêmes noms que les méthodes des [gestionnaires de proxy](/fr/docs/Web/JavaScript/Reference/Objets_globaux/Proxy/handler) et dont certaines correspondent, [avec quelques différences](/fr/docs/Web/JavaScript/Reference/Objets_globaux/Reflect/Comparing_Reflect_and_Object_methods), à celles d'{{jsxref("Object")}} : -<dl> - <dt>{{jsxref("Reflect.apply()")}}</dt> - <dd>Appelle une fonction cible avec les arguments définis par le paramètres <code>args</code>. Voir aussi {{jsxref("Function.prototype.apply()")}}.</dd> - <dt>{{jsxref("Reflect.construct()")}}</dt> - <dd> L'opérateur {{jsxref("Opérateurs/L_opérateur_new","new")}} comme fonction. C'est équivalent à <code>new cible(...args)</code>. Cette méthode permet également d'indiquer un prototype différent.</dd> - <dt>{{jsxref("Reflect.defineProperty()")}}</dt> - <dd>Semblable à {{jsxref("Object.defineProperty()")}}. Renvoie un {{jsxref("Boolean")}}.</dd> - <dt>{{jsxref("Reflect.deleteProperty()")}}</dt> - <dd>L'opérateur {{jsxref("Opérateurs/L_opérateur_delete","delete")}} comme fonction. C'est équivalent à <code>delete cible[nom]</code>.</dd> - <dt>{{jsxref("Reflect.get()")}}</dt> - <dd>Une fonction qui renvoie la valeur d'une propriété.</dd> - <dt>{{jsxref("Reflect.getOwnPropertyDescriptor()")}}</dt> - <dd>Semblable à {{jsxref("Object.getOwnPropertyDescriptor()")}}. Renvoie un descripteur de propriété si la propriété existe sur l'objet, {{jsxref("undefined")}} sinon.</dd> - <dt>{{jsxref("Reflect.getPrototypeOf()")}}</dt> - <dd>Identique à {{jsxref("Object.getPrototypeOf()")}}.</dd> - <dt>{{jsxref("Reflect.has()")}}</dt> - <dd>L'opérateur {{jsxref("Opérateurs/L_opérateur_in","in")}} comme fonction. Renvoie un booléen qui indique si une telle propriété existe pour l'objet (qu'elle soit directement rattachée ou héritée).</dd> - <dt>{{jsxref("Reflect.isExtensible()")}}</dt> - <dd>La même fonction que {{jsxref("Object.isExtensible()")}}.</dd> - <dt>{{jsxref("Reflect.ownKeys()")}}</dt> - <dd>Renvoie un tableau de chaînes de caractères qui correspondent aux noms des propriétés propres (celles qui ne sont pas héritées) de l'objet.</dd> - <dt>{{jsxref("Reflect.preventExtensions()")}}</dt> - <dd>Semblable à {{jsxref("Object.preventExtensions()")}}. Renvoie un {{jsxref("Boolean")}}.</dd> - <dt>{{jsxref("Reflect.set()")}}</dt> - <dd>Une fonction qui affecte des valeurs à des propriétés. Renvoie un {{jsxref("Boolean")}} qui vaut <code>true</code> si la mise à jour a bien été effectuée.</dd> - <dt>{{jsxref("Reflect.setPrototypeOf()")}}</dt> - <dd>Une fonction qui permet de définir le prototype d'un objet.</dd> -</dl> +- {{jsxref("Reflect.apply()")}} + - : Appelle une fonction cible avec les arguments définis par le paramètres `args`. Voir aussi {{jsxref("Function.prototype.apply()")}}. +- {{jsxref("Reflect.construct()")}} + - : L'opérateur {{jsxref("Opérateurs/L_opérateur_new","new")}} comme fonction. C'est équivalent à `new cible(...args)`. Cette méthode permet également d'indiquer un prototype différent. +- {{jsxref("Reflect.defineProperty()")}} + - : Semblable à {{jsxref("Object.defineProperty()")}}. Renvoie un {{jsxref("Boolean")}}. +- {{jsxref("Reflect.deleteProperty()")}} + - : L'opérateur {{jsxref("Opérateurs/L_opérateur_delete","delete")}} comme fonction. C'est équivalent à `delete cible[nom]`. +- {{jsxref("Reflect.get()")}} + - : Une fonction qui renvoie la valeur d'une propriété. +- {{jsxref("Reflect.getOwnPropertyDescriptor()")}} + - : Semblable à {{jsxref("Object.getOwnPropertyDescriptor()")}}. Renvoie un descripteur de propriété si la propriété existe sur l'objet, {{jsxref("undefined")}} sinon. +- {{jsxref("Reflect.getPrototypeOf()")}} + - : Identique à {{jsxref("Object.getPrototypeOf()")}}. +- {{jsxref("Reflect.has()")}} + - : L'opérateur {{jsxref("Opérateurs/L_opérateur_in","in")}} comme fonction. Renvoie un booléen qui indique si une telle propriété existe pour l'objet (qu'elle soit directement rattachée ou héritée). +- {{jsxref("Reflect.isExtensible()")}} + - : La même fonction que {{jsxref("Object.isExtensible()")}}. +- {{jsxref("Reflect.ownKeys()")}} + - : Renvoie un tableau de chaînes de caractères qui correspondent aux noms des propriétés propres (celles qui ne sont pas héritées) de l'objet. +- {{jsxref("Reflect.preventExtensions()")}} + - : Semblable à {{jsxref("Object.preventExtensions()")}}. Renvoie un {{jsxref("Boolean")}}. +- {{jsxref("Reflect.set()")}} + - : Une fonction qui affecte des valeurs à des propriétés. Renvoie un {{jsxref("Boolean")}} qui vaut `true` si la mise à jour a bien été effectuée. +- {{jsxref("Reflect.setPrototypeOf()")}} + - : Une fonction qui permet de définir le prototype d'un objet. -<h2 id="Spécifications">Spécifications</h2> +## Spécifications -<table class="standard-table"> - <tbody> - <tr> - <th scope="col">Spécification</th> - <th scope="col">État</th> - <th scope="col">Commentaires</th> - </tr> - <tr> - <td>{{SpecName('ES2015', '#sec-reflect-object', 'Reflect')}}</td> - <td>{{Spec2('ES2015')}}</td> - <td>Définition initiale.</td> - </tr> - <tr> - <td>{{SpecName('ESDraft', '#sec-reflect-object', 'Reflect')}}</td> - <td>{{Spec2('ESDraft')}}</td> - <td>Retrait de <code>Reflect.enumerate</code></td> - </tr> - </tbody> -</table> +| Spécification | État | Commentaires | +| ---------------------------------------------------------------------------- | ---------------------------- | ------------------------------ | +| {{SpecName('ES2015', '#sec-reflect-object', 'Reflect')}} | {{Spec2('ES2015')}} | Définition initiale. | +| {{SpecName('ESDraft', '#sec-reflect-object', 'Reflect')}} | {{Spec2('ESDraft')}} | Retrait de `Reflect.enumerate` | -<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2> +## Compatibilité des navigateurs -<p>{{Compat("javascript.builtins.Reflect")}}</p> +{{Compat("javascript.builtins.Reflect")}} -<h2 id="Voir_aussi">Voir aussi</h2> +## Voir aussi -<ul> - <li>L'objet global {{jsxref("Proxy")}}.</li> - <li>L'objet {{jsxref("Proxy.handler", "handler")}}.</li> -</ul> +- L'objet global {{jsxref("Proxy")}}. +- L'objet {{jsxref("Proxy.handler", "handler")}}. |