⊗jsSpOtEH 280 of 294 menu

JavaScriptтеги окуя иштетүүчүлөрдү оптималдаштыруу

Элементтерге илинип турган ашыкча көп окуя иштетүүчүлөр оперативдүү эстен көп орун алып, барактын токтоп калуусуна алып келет.

Келгиле, мисалды карап көрөлү. Бизде бир канча тизме бар деп коёлу:

<ul></ul>

Бул тизменин шилтемесин өзгөрмөгө алып көрөлү:

let ul = document.querySelector('ul');

Эми биздин тизмебизди li тегдери менен толтуруп, аларга чыкылдатуу иштетүүчүсүн илип коёлу:

for (let i = 1; i <= 1000; i++) { let li = document.createElement('li'); li.textContent = i; ul.append(li); li.addEventListener('click', function() { console.log(this.textContent); }); }

Натыйжада бизде 1000 иштетүүчү бар. Бул абдан көп. Оптималдаштыруу үчүн биз бир гана иштетүүчүнү ul тегине илип, делегирлөөнү колдонсок болот.

Келгиле, муну жасап көрөлү. Адегенде жөнөкөй тизме уяларын түзөлү:

for (let i = 1; i <= 1000; i++) { let li = document.createElement('li'); li.textContent = i; ul.append(li); }

Эми окуя иштетүүчүсүн делегирлейли:

ul.addEventListener('click', function(event) { let li = event.target.closest('li'); if (li) { console.log(li.textContent); } });

100 көлөмүндөгү HTML таблица түзүңүз 100 менен. Ар бир уя чыкылдатууда кызыл түскө боёлушү керек.

Кыргызча
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어LietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Биз сайттин иштөөсү, аналитика жана персонализация үчүн cookie файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу