Контекст кроз параметар у JavaScript-у
Постоји и друго решење проблема. Хајде да учинимо
да функција child прима
параметар:
function child(param) {
// овде ће бити код
}
А приликом позива ове функције ћемо прослеђивати
у њу this:
function parent() {
child(this); // прослеђујемо параметром this
function child(param) {
// у променљивој param се налази прослеђени садржај this-а
}
}
Пошто се позив child обавља
у родитељској функцији, то и прослеђени
this указује на оно што је потребно. Затим
овај this доспева у параметар param
и у том облику ће бити доступан унутар функције.
Ево коначног кода:
let elem = document.querySelector('#elem');
elem.addEventListener('blur', parent);
function parent() {
child(this); // прослеђујемо параметром this
function child(param) {
console.log(param.value); // исписујемо value уноса
}
}
Узмите код из претходног задатка и исправите проблем у коду користећи други изучени начин.