सबसे पहले, आप एक वोट प्राप्त करते हैं क्योंकि यह एक मूर्ख सवाल नहीं है। स्टैक ओवरफ्लो पर कुछ लोग हकदार हैं।
कार्यों में कुछ संदर्भ कहा जाता है। एक संदर्भ वह वस्तु है जिस पर फ़ंक्शन को बुलाया जा रहा है।
let person = {
name:"bill",
speak:function(){
console.log("hi i am "+this.name)
}
}
अगर आप person.speak करने के लिए थे()
यह उद्देश्य यह है कि परिभाषित किया गया था पर बुलाया जाएगा। चर person
इसलिए जब आप यह कहते हैं संदर्भ
है। यह व्यक्ति कहने जैसा ही है। नाम
अब आप फ़ंक्शन को किसी और चीज़ से जोड़ सकते हैं।
var newperson = {name:'jill'}
newperson.speak = person.speak;
यह प्रिंट करेगा हाय जब मैं इसे कॉल करता हूं तो मैं जिल हूं।
इसे पहले समझें।
अब दो कदम पर।
GetConfig एक फ़ंक्शन देता है, हालांकि यह फ़ंक्शन किसी ऑब्जेक्ट को संलग्न नहीं करता है।
इसे देखें।
let person = {
name:"bill",
getSpeakFunction:function(){
return function(){
console.log('hi my name is '+this.name)
}
}
}
let func = person.getSpeakFunction()
अब फ़ंक्शन func स्वयं ही है।
अब जब यह कहा जाता है कि "यह" कौन है जिसके बारे में आप बात कर रहे हैं। फ़ंक्शन सोच रहा है।
तो हम कहकर कार्य करने में मदद कर सकते हैं।
let person = {
name:"bill",
getSpeakFunction:function(){
let context = this; //listen hear function this is what i am talking about
return function(){
console.log('hi my name is '+context.name)
}
}
}
let func = person.getSpeakFunction()
इस खास है भाषा इस का मूल्य तय करता है, फिर भी संदर्भ नहीं है। संदर्भ जो कुछ भी सौंपा जाएगा, वह संदर्भ होगा। जब तक आप प्रोग्रामर इसे बदल नहीं लेता तब तक यह तब तक नहीं बदलेगा।
तो शब्द का उपयोग कर _self, संदर्भ, $ बाकी जब आप इसे करने के लिए इस का मूल्य निर्दिष्ट इस या कुछ भी। यह किसी भी अन्य नियमित चर की तरह 'जगह में बंद' है।
let a = 2;
//this will never change
let _self = this //_self will never change as it's your variable
अब जब आप अपना फ़ंक्शन कॉल करते हैं और यह स्वयं की तलाश करता है।यह बिल्कुल जानता है कि आप किस बारे में बात कर रहे हैं।
ps। मैं वोट भी मांग रहा हूं;)
संभावित डुप्लिकेट [यह "कीवर्ड" कैसे काम करता है?] (http://stackoverflow.com/questions/3127429/how-does-the-this-keyword-work) – toskv
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Statements/let – naththedeveloper
संभावित डुप्लिकेट [इस जावास्क्रिप्ट idiom क्या है: var self = this?] (Http://stackoverflow.com/ प्रश्न/962,033/क्या-underlies-यह-जावास्क्रिप्ट-मुहावरा-वर-स्वयं इस) – JJJ