La méthode statique Reflect
.set()
permet de définir ou de modifier une propriété sur un objet.
Syntaxe
Reflect.set(cible, cléPropriété, valeur[, récepteur])
Paramètres
cible
- L'objet cible sur lequel on veut définir ou modifier la propriété.
cléPropriété
- Le nom de la propriété à définir ou à modifier.
- valeur
- La valeur pour la propriété.
- récepteur
- La valeur de
this
pour l'appel àcible
si un mutateur (setter) est utilisé.
Valeur de retour
Un booléen qui indique si la définition/modification de la propriété a réussi.
Exceptions
Une erreur TypeError
si cible
n'est pas un Object
.
Description
La méthode Reflect.set
permet de définir une propriété sur un objet. Elle effectue une affectation de propriété et est semblable à la syntaxe pour accéder à un propriété mais sous la forme d'une fonction.
Exemples
Utiliser Reflect.set()
// Object var obj = {}; Reflect.set(obj, "prop", "value"); // true obj.prop; // "value" // Array var arr = ["canard", "canard", "canard"]; Reflect.set(arr, 2, "oie"); // true arr[2]; // "oie" // On peut l'utiliser pour tronquer un tableau Reflect.set(arr, "length", 1); // true arr; // ["canard"]; // Avec un seul argument // cléPropriété et valeur valent "undefined". var obj = {}; Reflect.set(obj); // true Reflect.getOwnPropertyDescriptor(obj, "undefined"); // { value: undefined, writable: true, enumerable: true, configurable: true }
Spécifications
Spécification | État | Commentaires |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) La définition de 'Reflect.set' dans cette spécification. |
Standard | Définition initiale. |
ECMAScript 2017 Draft (ECMA-262) La définition de 'Reflect.set' dans cette spécification. |
Projet |
Compatibilité des navigateurs
Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Support simple | 49 | 42 (42) | Pas de support | Pas de support | Pas de support |
Fonctionnalité | Android | Chrome pour Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Support simple | Pas de support | Pas de support | 42.0 (42) | Pas de support | Pas de support | Pas de support |
Voir aussi
Étiquettes et contributeurs liés au document
Étiquettes :
Contributeurs à cette page :
SphinxKnight
Dernière mise à jour par :
SphinxKnight,