Metodo call
Il metodo call permette di chiamare una funzione
con un contesto specificato. Il primo parametro
del metodo deve essere il contesto della funzione,
e i parametri successivi - i parametri della funzione.
Sintassi
funzione.call(contesto, parametro1, parametro2...);
Esempio
Supponiamo di avere un input:
<input id="elem" value="text">
Supponiamo anche una funzione che accetta tre parametri:
function func(param1, param2, param3) {
console.log(this.value + param1 + param2 + param3);
}
Chiamiamo la nostra funzione in modo che this
all'interno della funzione sia uguale al nostro input, e
allo stesso tempo passandole come parametri i numeri 1,
2 e 3:
let elem = document.querySelector('#elem');
func.call(elem, 1, 2, 3);
Esempio
Supponiamo che la funzione non accetti parametri:
function func() {
console.log(this.value);
}
In questo caso, quando si chiama questa funzione tramite
call è sufficiente passare solo il primo parametro
con il contesto:
let elem = document.querySelector('#elem');
func.call(elem);