Kupeana Callback ya Kufanya Kazi na DOM kwenye JavaScript

Hebu tuchukulie tuna kikundi cha vipengele vya DOM:

html<p class="elem">1</p>
<p class="elem">2</p>
<p class="elem">3</p>
<p class="elem">4</p>
<p class="elem">5</p>

Wacha tutengeneze kukokotoa forEach ambayo itachukua kichaguzi cha kikundi cha vipengele kama kigezo cha kwanza, na kigezo cha pili - kukokotoa-callback, ambayo itatumika kwa kila kipengele kilichopatikana kwa mtiririko:

javascriptforEach('.elem', function() {
  // kukokotoa kitatumika kwa kila kipengele
});

Hebu vipengele vilivyokidhi kichaguzi, vingiingie kwenye kigezo cha kwanza cha callback kwa mtiririko:

javascriptforEach('.elem', function(elem) {
  console.log(elem); // itaonyesha vipengele vilivyopatikana kwa mtiririko
});

Wacha kwa kutumia kukokotoa yetu tutafute vipengele vyote vilivyo na darasa elem na kwa kila kipengele kilichopatikna tutumie callback, ambayo itaweka mraba maandishi ya kila kipengele:

javascriptforEach('.elem', function(elem) {
  elem.textContent = elem.textContent ** 2;
});

Sasa hebu tuandike utekelezaji wa kukokotoa tulilokusudia forEach:

javascriptfunction forEach(selector, func) {
  let elems = document.querySelectorAll(selector);
  
  for (let elem of elems) {
    func(elem);
  }
}
Задание 1

Kuna aya. Kwa kutumia kukokotoa tuliyounda forEach kwa kila aya ongeza mwishoni kwa maandishi yake alama ya mshangao.