Kutenganisha Kazi Bila Majina katika JavaScript

Hebu sasa kwa aya zetu zimefungwa kazi bila majina:

javascriptlet elems = document.querySelectorAll('p');

for (let elem of elems) {
  elem.addEventListener('click', function() {
    console.log(this.textContent);
  });
}

Hebu tunataka kutenganisha kazi hii kutoka kwa aya baada ya kubofya kwenye aya hii. Hata hivyo, tunakabiliwa na tatizo: kazi haina jina, na hivyo basi hatutaweza kuirejea kwa jina hilo, ili kuitenganisha.

Ili kutatua tatizo inahitajika kuipa jina kazi hiyo, kuifanya kuwa usemi wa kazi wenye jina. Hebu tufanye hivyo:

javascriptlet elems = document.querySelectorAll('p');

for (let elem of elems) {
  elem.addEventListener('click', function func() { // tuliipa jina kazi
    console.log(this.textContent);
  });
}

Sasa kazi hii inaweza kutenganishwa ndani yake yenyewe:

javascriptlet elems = document.querySelectorAll('p');

for (let elem of elems) {
  elem.addEventListener('click', function func() {
    console.log(this.textContent);
    this.removeEventListener('click', func); // tunatenganisha kazi
  });
}
Задание 1

Imetolewa orodha ul, ambapo kwa kila kipengele kimeandikwa nambari. Fanya ili kwa kubofya kwenye li yoyote thamani yake iongezeke kwa moja.

Задание 2

Badilisha shida iliyotangulia ili, li kila moja iongeze thamani yake tu kwa kubofya kwa mara ya kwanza juu yake.

Задание 3

Badilisha shida iliyotangulia ili, li kila moja iongeze thamani yake tu ikiwa thamani yake ni ndogo kuliko 10.