13 of 17 menu

JavaScript'те this жебегинин катасы

Акыркы мезгилде бардык жерде кадимки функциялардын ордуна жебе функцияларын колдонуу мода болуп калды. Бирок, бул функциялардын тамашы бар - алар this сактай алышпайт. Келгиле, бул себептен кандай маселеге тушушу мүмкүн экенин көрөлү.

Анда бизде баскыч болсун:

<button>text</button>

Ошол баскычка шилтеме алып, өзгөрмөгө коёлу:

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

Баскычка жебе функциясын колдонуп, окуя иштеткичин орнотойлу:

button.addEventListener('click', () => { console.log(this.textContent); });

Мына бул жерде бизди күтүлбөгөн нерсе күтөт: жебе функциясындагы this окуя болуп жаткан элементке тиешелүү болбой калат.

Келгиле, буга эмне кылууга болорун карап чыгалы.

Биринчи чечим

this колдонуудан баш тартып, окуя байланган өзгөрмөгө жүгүрсө болот:

button.addEventListener('click', () => { console.log(button.textContent); });

Экинчи чечим

Окуя байланган элементти event.target аркылуу алууга болот:

button.addEventListener('click', (event) => { console.log(event.target.textContent); });

Үчүнчү чечим

Жебе функциясынан баш тартып, кадимки функцияны колдонсо болот:

button.addEventListener('click', function() { console.log(this.textContent); });
Кыргызча
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 файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу