Konteksti përmes parametrit në JavaScript
Ekziston një zgjidhje tjetër për këtë problem. Le të bëjmë
që funksioni child të pranojë
një parametër:
function child(param) {
// këtu do të jetë kodi
}
Dhe kur ta therasim këtë funksion, do t'ia transmetojmë
this si parameter:
function parent() {
child(this); // transmetojmë this si parametër
function child(param) {
// në variablin param gjendet përmbajtja e transmetuar e this
}
}
Meqë thirrja e child kryhet
në funksionin prind, edhe this i transmetuar
tregon atë që duhet. Pastaj
ky this kalon në parametrin param
dhe në këtë formë do të jetë i disponueshëm brenda funksionit.
Këtu është kodi përfundimtar:
let elem = document.querySelector('#elem');
elem.addEventListener('blur', parent);
function parent() {
child(this); // transmetojmë this si parametër
function child(param) {
console.log(param.value); // shfaqim vlerën e inputit
}
}
Merrni kodin nga detyra e mëparshme dhe korrigjoni problemin e kodit duke përdorur mënyrën e dytë të studiuar.