Call-metodi
Metodi call mahdollistaa funktion kutsun
annetulla kontekstilla. Metodin ensimmäisenä parametrina
tulee määrittää funktion konteksti,
ja jäljellä olevina parametreina - funktion parametrit.
Syntaksi
javascriptfunktio.call(konteksti, parametri1, parametri2...);
Esimerkki
Oletetaan, että meillä on input-kenttä:
html<input id="elem" value="text">
Oletetaan myös, että on annettu funktio, joka ottaa kolme parametria:
javascriptfunction func(param1, param2, param3) {
console.log(this.value + param1 + param2 + param3);
}
Kutsutaan funktiota siten, että this
funktion sisällä vastaa input-kenttäämme, ja
samalla välitetään sille parametreina numerot 1,
2 ja 3:
javascriptlet elem = document.querySelector('#elem');
func.call(elem, 1, 2, 3);
Esimerkki
Oletetaan, että funktio ei ota parametreja:
javascriptfunction func() {
console.log(this.value);
}
Tässä tapauksessa funktiota kutsuttaessa
call-metodilla riittää välittää vain ensimmäinen parametri
kontekstilla:
javascriptlet elem = document.querySelector('#elem');
func.call(elem);