जावास्क्रिप्ट फ़ंक्शन लागू करें
विधि पुन: उपयोग
विधि के साथ apply()
, आप एक ऐसी विधि लिख सकते हैं जिसका उपयोग विभिन्न वस्तुओं पर किया जा सकता है।
जावास्क्रिप्ट लागू () विधि
विधि विधि (पिछले अध्याय) के apply()
समान है ।call()
इस उदाहरण में व्यक्ति का पूर्ण नाम पद्धति व्यक्ति 1 पर लागू होती है :
उदाहरण
const person = {
fullName: function() {
return this.firstName + " " + this.lastName;
}
}
const person1 = {
firstName: "Mary",
lastName: "Doe"
}
// This will return "Mary Doe":
person.fullName.apply(person1);
कॉल () और लागू () के बीच का अंतर
अंतर है:
विधि अलग से call()
तर्क लेती है ।
विधि एक सरणी के apply()
रूप में तर्क लेती है ।
यदि आप तर्क सूची के बजाय किसी सरणी का उपयोग करना चाहते हैं तो लागू () विधि बहुत आसान है।
तर्क के साथ लागू () विधि
विधि एक सरणी में apply()
तर्क स्वीकार करती है:
उदाहरण
const person = {
fullName: function(city, country) {
return this.firstName + " " + this.lastName
+ "," + city + "," + country;
}
}
const person1 = {
firstName:"John",
lastName: "Doe"
}
person.fullName.apply(person1, ["Oslo", "Norway"]);
call()
विधि की तुलना में :
उदाहरण
const person = {
fullName: function(city, country) {
return this.firstName + " " + this.lastName
+ "," + city + "," + country;
}
}
const person1 = {
firstName:"John",
lastName: "Doe"
}
person.fullName.call(person1, "Oslo", "Norway");
सरणियों पर एक अधिकतम विधि का अनुकरण करें
Math.max()
आप विधि का उपयोग करके सबसे बड़ी संख्या (संख्याओं की सूची में) पा सकते हैं :
उदाहरण
Math.max(1,2,3); // Will return 3
चूंकि जावास्क्रिप्ट सरणियों में अधिकतम () विधि नहीं है, आप
Math.max()
इसके बजाय विधि को लागू कर सकते हैं।
उदाहरण
Math.max.apply(null, [1,2,3]); // Will also return 3
पहला तर्क (शून्य) मायने नहीं रखता। इस उदाहरण में इसका उपयोग नहीं किया गया है।
ये उदाहरण एक ही परिणाम देंगे:
उदाहरण
Math.max.apply(Math, [1,2,3]); // Will also return 3
उदाहरण
Math.max.apply(" ", [1,2,3]); // Will also return 3
उदाहरण
Math.max.apply(0, [1,2,3]); // Will also return 3
जावास्क्रिप्ट सख्त मोड
जावास्क्रिप्ट सख्त मोड में, यदि विधि का पहला तर्क apply()
कोई वस्तु नहीं है, तो यह आह्वान किए गए फ़ंक्शन का स्वामी (वस्तु) बन जाता है। "गैर-सख्त" मोड में, यह वैश्विक वस्तु बन जाता है।