⊗jsPmCxCM 440 of 505 menu

JavaScript में कॉल मेथड के माध्यम से कॉन्टेक्स्ट बाइंडिंग

तो, हमने समझ लिया है कि this वास्तव में कैसे काम करता है। आइए अब उन मेथड्स पर विचार करें जो जबरन यह निर्दिष्ट करने की अनुमति देते हैं कि एक फ़ंक्शन किस कॉन्टेक्स्ट में कॉल किया गया है (यानी जबरन यह बताने के लिए कि this किसके बराबर है)।

पहली मेथड जिसे हम देखेंगे, उसे call कहा जाता है। आइए एक उदाहरण के साथ इसके काम को देखें। मान लीजिए कि हमारे पास एक इनपुट है:

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

आइए इस इनपुट का संदर्भ प्राप्त करें और इसे एक वेरिएबल elem में लिखें:

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

आइए अब एक फ़ंक्शन func बनाएं, जिसके अंदर this.value आउटपुट करें:

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

अभी हमारा फ़ंक्शन नहीं जानता कि this किसको संदर्भित कर रहा है। अगर हम इसे addEventListener के माध्यम से बांधते, तो हाँ। लेकिन हम ऐसा नहीं करेंगे। इसके बजाय हम बस अपने फ़ंक्शन को कॉल करेंगे, यह बताते हुए कि this elem के बराबर होना चाहिए।

यह इस तरह से किया जाता है: func.call(elem)। यह कोड सीधे फ़ंक्शन कॉल func() के समान है, केवल इस शर्त पर कि this, elem के बराबर है।

तो, कॉल मेथड का सिंटैक्स है: फ़ंक्शन.call(ऑब्जेक्ट)। आइए सब कुछ एक साथ रखें:

let elem = document.querySelector('#elem'); function func() { console.log(this.value); // इनपुट का value आउटपुट करेगा } func.call(elem);

एक फ़ंक्शन दी गई है:

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

तीन इनपुट दिए गए हैं:

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

call मेथड और func फ़ंक्शन का उपयोग करके प्रत्येक इनपुट का value स्क्रीन पर आउटपुट करें।

हिन्दी
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
हम साइट के कार्य, विश्लेषण और व्यक्तिगतकरण के लिए कुकीज़ का उपयोग करते हैं। डेटा प्रसंस्करण गोपनीयता नीति के अनुसार किया जाता है।
सभी स्वीकार करें कॉन्फ़िगर करें अस्वीकार करें