--- title: Reflect.apply() slug: Web/JavaScript/Reference/Global_Objects/Reflect/apply translation_of: Web/JavaScript/Reference/Global_Objects/Reflect/apply ---
Reflect.apply() ruft eine Zielfunktion mit den spezifizierten Parametern auf.Reflect.apply(target, thisParameter, listeDerArgumente)
this der für den Aufruf bereitgestellt wird.Das Resultat des Aufruft, der Zielfunktion mit dem mitgegebenen this und den mitgegebenen Parametern.
Es wird ein {{jsxref("TypeError")}} geworfen, wenn die Zielfunktion nicht aufrufbar ist.
In ES5, ruft man typischerweise {{jsxref("Function.prototype.apply()")}} auf, um eine Funktion aufzurufen, der man einen bestimmten this mitgeben und die Parameter als Array (oder einem array-like object) definieren möchte.
Function.prototype.apply.call(Math.floor, undefined, [1.75]);
Durch Reflect.apply wird dieses Vorhaben kürzer und ist leichter zu verstehen.
Reflect.apply()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, 'ponies', [3]);
// "i"
| Spezifikation | Status | Kommentar |
|---|---|---|
| {{SpecName('ES2015', '#sec-reflect.apply', 'Reflect.apply')}} | {{Spec2('ES2015')}} | Ursprüngliche Definition. |
| {{SpecName('ESDraft', '#sec-reflect.apply', 'Reflect.apply')}} | {{Spec2('ESDraft')}} |
{{Compat("javascript.builtins.Reflect.apply")}}