Reflect.apply()
La méthode statique Reflect.apply()
permet d'appeler une fonction cible avec des arguments donnés.
Exemple interactif
Syntaxe
Reflect.apply(cible, argumentThis, listeArguments);
Paramètres
cible
-
La fonction cible à appeler.
argumentThis
-
La valeur fournie pour
this
lors de l'appel àcible
. listeArguments
-
Un objet semblable à un tableau qui définit les arguments à passer à
cible
. S'il vautnull
ouundefined
, aucun argument ne sera passé.
Valeur de retour
Le résultat de l'appel de la fonction cible indiquée avec la valeur this
et les arguments indiqués.
Exceptions levées
Une exception TypeError
, si cible ne peut pas être appelée.
Description
Avec ES5, on utilise généralement Function.prototype.apply()
pour appeler une fonction avec une valeur this
donnée et des arguments donnés.
Function.prototype.apply.call(Math.floor, undefined, [1.75]);
Reflect.apply
permet de rendre cela plus concis et facile à comprendre.
Exemples
Reflect.apply(Math.floor, undefined, [1.75]);
// 1;
Reflect.apply(String.fromCharCode, undefined, [104, 101, 108, 108, 111]);
// "hello"
Reflect.apply(RegExp.prototype.exec, /ab/, ["confabulation"]).index;
// 4
Reflect.apply("".charAt, "poneys", [3]);
// "e"
Spécifications
Specification |
---|
ECMAScript Language Specification # sec-reflect.apply |
Compatibilité des navigateurs
BCD tables only load in the browser