Kontekst parameetri kaudu JavaScriptis
On olemas ka teine lahendus. Teeme nii,
et funktsioon child võtaks vastu
parameetri:
function child(param) {
// siin on kood
}
Ja selle funktsiooni kutsumisel anname
sellele ette this:
function parent() {
child(this); // edastame this parameetrina
function child(param) {
// muutujas param on edastatud this-i sisu
}
}
Kuna child kutsumine toimub
vanemfunktsioonis, siis edastatav
this viitab sellele, mida vaja. Seejärel
see this satub parameetrisse param
ja sellisel kujul on see funktsiooni sees kättesaadav.
Siin on lõplik kood:
let elem = document.querySelector('#elem');
elem.addEventListener('blur', parent);
function parent() {
child(this); // edastame this parameetrina
function child(param) {
console.log(param.value); // väljastame inputi value
}
}
Võtke kood eelmisest ülesandest ja parandage koodi probleem õpitud teise viisi abil.