JavaScript-da this ob'ekti

Hozir biz funktsiya-hodis qayta ishlovchisida mavjud bo'lgan maxsus this ob'ekti bilan ishlaymiz. Ushbu ob'ekt hodisa yuz bergan elementni ko'rsatadi.

this ob'ekti qulay, chunki hodisa yuz bergan element va hodisa natijasida amalga oshiriladigan harakatlar bilan bog'liq element - bu bir xil element bo'lganda.

Masalan, agar bizda kirish maydoni (input) bo'lsa, unga fokusni yo'qotish hodisasi qayta ishlovchisini bog'lab, ushbu hodisa yuz berganda kirish maydonining matni bilan biror narsa qilishimiz mumkin. Keling, tasvirlangan narsani amalga oshiramiz. Bizda quyidagi kirish maydoni berilgan bo'lsin:

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

Keling, unga havolani o'zgaruvchiga elem olamiz:

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

Unga blur hodisasi funktsiya-qayta ishlovchisini bog'laymiz:

javascriptelem.addEventListener('blur', func);

Ushbu func funktsiyasining ichida bizning kirish maydonimizni ko'rsatadigan this ob'ekti mavjud bo'ladi:

javascriptfunction func() {
  console.log(this); // bizning elementimizga havolani o'z ichiga oladi
}

Keling, kirish maydonimizning value atributining tarkibini chiqaramiz:

javascriptfunction func() {
  console.log(this.value); // atribut tarkibini chiqaramiz
}

Endi, keling, kirish maydoniga biron bir matn yozamiz:

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

Anonim funktsiyadan ham foydalanish mumkin:

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

Kirish maydoni berilgan. Ushbu kirish maydoni fokusni olganda unga 1 raqamini yozing, fokus yo'qolganida esa 2 raqamini yozing. Funktsiya-qayta ishlovchi ichida kirish maydoniga murojaat qilish uchun this ob'ektidan foydalaning.

Задание 2

Qiymati 1 raqami bo'lgan tugma berilgan. Ushbu tugma bosilganda uning qiymati har safar bittaga oshib borishini ta'minlang.