कॉल मेथड
call मेथड किसी फ़ंक्शन को
दिए गए कॉन्टेक्स्ट के साथ कॉल करने की
अनुमति देता है। मेथड के पहले पैरामीटर
के रूप में फ़ंक्शन का कॉन्टेक्स्ट निर्दिष्ट करना चाहिए,
और शेष पैरामीटर - फ़ंक्शन के पैरामीटर।
सिंटैक्स
फ़ंक्शन.call(कॉन्टेक्स्ट, पैरामीटर1, पैरामीटर2...);
उदाहरण
मान लीजिए कि हमारे पास एक इनपुट है:
<input id="elem" value="text">
मान लीजिए कि एक फ़ंक्शन भी दिया गया है जो तीन पैरामीटर लेता है:
function func(param1, param2, param3) {
console.log(this.value + param1 + param2 + param3);
}
आइए हमारे फ़ंक्शन को इस तरह कॉल करें कि this
फ़ंक्शन के अंदर हमारे इनपुट के बराबर हो, और
साथ ही इसे पैरामीटर के रूप में संख्याएँ 1,
2 और 3 पास करें:
let elem = document.querySelector('#elem');
func.call(elem, 1, 2, 3);
उदाहरण
मान लीजिए कि फ़ंक्शन कोई पैरामीटर नहीं लेता:
function func() {
console.log(this.value);
}
इस स्थिति में, इस फ़ंक्शन को
call के माध्यम से कॉल करते समय केवल कॉन्टेक्स्ट वाला
पहला पैरामीटर पास करना पर्याप्त है:
let elem = document.querySelector('#elem');
func.call(elem);