Método apply
O método apply permite chamar uma função
com um contexto definido. O primeiro parâmetro
do método deve ser o contexto da função,
e o segundo - um array de parâmetros da função.
Sintaxe
função.apply(contexto, array de parâmetros);
Exemplo
Suponha que temos um input:
<input id="elem" value="text">
Suponha também que temos uma função que recebe três parâmetros:
function func(param1, param2, param3) {
console.log(this.value + param1 + param2 + param3);
}
Vamos chamar nossa função de forma que this
dentro da função seja igual ao nosso input, e
ao mesmo tempo passando a ela os números 1,
2 e 3 como parâmetros:
let elem = document.querySelector('#elem');
func.apply(elem, [1, 2, 3]);
Exemplo
Suponha que a função não receba parâmetros:
function func() {
console.log(this.value);
}
Neste caso, ao chamar esta função
via apply, basta passar
apenas o primeiro parâmetro com o contexto:
let elem = document.querySelector('#elem');
func.apply(elem);