⊗jsPmCxCM 440 of 505 menu

JavaScriptda call metodi orqali kontekstni bog‘lash

Shunday qilib, biz this ning aslida qanday ishlashini tahlil qildik. Keling, endi funktsiya qaysi kontekstda chaqirilishini majburan belgilashga imkon beruvchi metodlarni ko'rib chiqaylik (ya'ni this nimaga teng ekanligini majburan aytish).

Biz ko'rib chiradigan birinchi metod call deb ataladi. Keling, uning ishlashini misolda ko'ramiz. Bizda input bo'lsin:

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

Keling, ushbu inputga havola olamiz va uni elem o'zgaruvchisiga yozamiz:

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

Keling, endi func funktsiyasini yarataylik, uning ichida this.value ni chiqaramiz:

function func() { console.log(this.value); }

Hozircha bizning funktsiyamiz this nimaqa murojaat qilayotganini bilmaydi. Agar biz uni addEventListener orqali bog'lab qo'ysak, unda ha. Lekin biz buni qilmaymiz. Buning o'rniga biz shunchaki funktsiyamizni chaqiramiz va unga this elem ga teng bo'lishi kerakligini aytamiz.

Bu shunday qilinadi: func.call(elem). Ushbu kod oddiy funktsiyani func() deb chaqirishga ekvivalent, faqat this elem ga teng bo'lgan shart bilan.

Shunday qilib, call metodining sintaksisi: funktsiya.call(ob'ekt). Keling, hammasini birlashtiramiz:

let elem = document.querySelector('#elem'); function func() { console.log(this.value); // inputning value sini chiqaradi } func.call(elem);

Funktsiya berilgan:

function func() { console.log(this.value); }

Uchta input berilgan:

<input id="elem1" value="text1"> <input id="elem2" value="text2"> <input id="elem3" value="text3">

call metodi va func funktsiyasi yordamida har bir inputning value sini ekranda chiqaring.

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish