Context prin parametru în JavaScript
Există și o altă soluție pentru problemă. Să facem
astfel încât funcția child să accepte
un parametru:
javascriptfunction child(param) {
// aici va fi codul
}
Iar la apelarea acestei funcții vom transmite
în ea this:
javascriptfunction parent() {
child(this); // transmitem this ca parametru
function child(param) {
// în variabila param se află conținutul this transmis
}
}
Deoarece apelul child se realizează
în funcția părinte, și this transmis
indică ceea ce trebuie. Apoi
acest this ajunge în parametrul param
și în această formă va fi accesibil în interiorul funcției.
Iată codul final:
javascriptlet elem = document.querySelector('#elem');
elem.addEventListener('blur', parent);
function parent() {
child(this); // transmitem this ca parametru
function child(param) {
console.log(param.value); // afișăm value al input-ului
}
}
Задание 1
Luați codul din sarcina anterioară și corectați problema codului cu ajutorul celei de-a doua metode studiate.