Legarea contextului prin metoda apply în JavaScript
Să analizăm acum metoda apply
pentru legarea contextului. Ea funcționează practic
la fel ca și metoda call. Diferența constă
în faptul că în apply parametrii sunt transmiși
sub formă de array, și nu enumerați prin virgulă.
În funcție de sarcină, uneori este convenabilă una,
alteori cealaltă metodă.
Iată un exemplu de transmitere a parametrilor în metoda apply:
func.apply(elem, [param1, param2]);
Să presupunem că este dat următorul cod:
<input id="elem" value="hello">
let elem = document.querySelector('#elem');
function func(surname, name) {
console.log(this.value + ', ' + surname + ' ' + name);
}
func(); // aici ar trebui să afișeze 'hello, John Smit'
Adăugați în ultimul rând metoda apply
astfel încât să se afișeze 'hello,
John Smit'. Cuvântul 'hello' trebuie
să fie preluat din value al input-ului, iar 'John'
și 'Smit' trebuie să fie parametrii funcției.