Objekti this në JavaScript
Tani do të punojmë me objektin special
this, i cili është i disponueshëm në funksionin
përpunues të ngjarjes. Ky objekt tregon elementin
ku ka ndodhur ngjarja.
Objekti this është i përshtatshëm kur elementi
ku ka ndodhur ngjarja, dhe elementi me të cilin
kryhen veprimet si rezultat i ngjarjes, - janë i njëjti element.
Për shembull, nëse kemi një input, mund t'i bashkëngjisim një përpunues humbjes së fokusit dhe kur ndodh kjo ngjarje të bëjmë diçka me tekstin e inputit. Le të bëjmë atë që u përshkrua. Le të themi se kemi një input:
<input id="elem" value="text">
Le të marrim një referencë për të në variablin
elem:
let elem = document.querySelector('#elem');
Le t'i bashkëngjisim një funksion përpunues të ngjarjes
blur:
elem.addEventListener('blur', func);
Brenda këtij funksioni func do të jetë i disponueshëm
objekti this, që tregon inputin tonë:
function func() {
console.log(this); // përmban një referencë për elementin tonë
}
Le të shfaqim përmbajtjen e atributit value
të inputit tonë:
function func() {
console.log(this.value); // do të shfaqim përmbajtjen e atributit
}
E tani, le të shkruajmë në input një tekst:
function func() {
this.value = '!!!';
}
Mund të përdoret edhe funksion anonim:
elem.addEventListener('blur', function() {
this.value = '!!!';
});
Është dhënë një input. Kur merr fokusin ky input
shkruani në të numrin 1, dhe kur humbet
fokusin - numrin 2. Për t'iu referuar
inputit brenda funksionit-përpunues përdorni
objektin this.
Është dhënë një buton, vlera e të cilit është numri
1. Bëni që me çdo klikim në
këtë buton vlera e tij të rritet çdo herë
për një.