Kontextus paraméterként JavaScriptben
Létezik egy másik megoldás is a problémára. Tegyük
úgy, hogy a child függvény
fogadjon egy paramétert:
function child(param) {
// itt lesz a kód
}
És ennek a függvénynek a hívásakor
átadjuk neki a this-et:
function parent() {
child(this); // átadjuk paraméterként a this-t
function child(param) {
// a param változóban a this átadott tartalma található
}
}
Mivel a child hívása a
szülőfüggvényben történik, ezért az átadott
this is arra mutat, amire kell. Ezután
ez a this bekerül a param
paraméterbe, és ebben a formában lesz elérhető a függvényen belül.
Itt a végső kód:
let elem = document.querySelector('#elem');
elem.addEventListener('blur', parent);
function parent() {
child(this); // átadjuk paraméterként a this-t
function child(param) {
console.log(param.value); // kiírjuk az input value értékét
}
}
Vegyétek az előző feladat kódját és javítsátok ki a kód problémáját a tanult második módszer segítségével.