Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.
Reflect.apply()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since setembro de 2016.
O método estáticoReflect.apply() chama uma função alvo com os argumentos especificados.
In this article
Sintaxe
Reflect.apply(target, thisArgument, argumentsList)
Parâmetros
- target
Função que será chamada.
- thisArgument
O valor de "
this"que será usado pela function do target.- argumentsList
Um objeto do tipo array que especifica os argumentos com que o
targetdeve ser chamado.
Valor de retorno
O resultado da função alvo chamada com othis e argumentos especificados.
Exceções
UmTypeError, se a função especificada notarget não for invocável.
Descrição
No ES5, tipicamente é usado o métodoFunction.prototype.apply() para chamar uma função com o valor dethis e argumentos fornecidos como um array (ou umarray-like object).
Function.prototype.apply.call(Math.floor, undefined, [1.75]);Com oReflect.apply isso se torna menos verboso e mais fácil de entender.
Exemplos
>UsandoReflect.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;// 4Reflect.apply("".charAt, "ponies", [3]);// "i"Especificações
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-reflect.apply> |