Die objek this in JavaScript

Tans gaan ons werk met die spesiale objek this, beskikbaar in die gebeurtenishandteringsfunksie. Hierdie objek wys na die element waarin die gebeurtenis plaasgevind het.

Die objek this is handig wanneer die element waarin die gebeurtenis plaasgevind het, en die element waarmee aksies as gevolg van die gebeurtenis uitgevoer word, dieselfde element is.

Byvoorbeeld, as ons 'n invoerveld het, kan ons 'n fokusverlies-handleerder daaraan koppel en by die intree van daardie gebeurtenis iets doen met die teks van die invoerveld. Laat ons dit doen. Kom ons het die volgende invoerveld:

html<input id="elem" value="text">

Laat ons 'n verwysing daarna in die veranderlike elem kry:

javascriptlet elem = document.querySelector('#elem');

Laat ons 'n gebeurtenishandteringsfunksie vir die blur-gebeurtenis daaraan koppel:

javascriptelem.addEventListener('blur', func);

Binne hierdie funksie func sal die objek this beskikbaar wees, wat na ons invoerveld wys:

javascriptfunction func() {
  console.log(this); // bevat 'n verwysing na ons element
}

Laat ons die inhoud van die value-kenmerk van ons invoerveld uitskryf:

javascriptfunction func() {
  console.log(this.value); // druk die inhoud van die kenmerk
}

Nou, laat ons 'n teks in die invoerveld skryf:

javascriptfunction func() {
  this.value = '!!!';
}

'n Anonieme funksie kan ook gebruik word:

javascriptelem.addEventListener('blur', function() {
  this.value = '!!!';
});
Задание 1

Gegee 'n invoerveld. Wanneer hierdie invoerveld fokus kry, skryf die getal 1 daarin, en met fokusverlies - die getal 2. Gebruik die objek this om binne die gebeurtenishandteringsfunksie na die invoerveld te verwys.

Задание 2

Gegee 'n knoppie waarvan die waarde die getal 1 is. Maak so dat met elke klik op hierdie knoppie sy waarde elke keer met een toeneem.