जेवास्क्रिप्ट ऑब्जेक्ट प्रोटोटाइप
- पिछला पृष्ठ JS ऑब्जेक्ट कन्स्ट्रक्टर
- अगला पृष्ठ JS ऑब्जेक्ट रेफरेंस
सभी JavaScript ऑब्जेक्ट वंशानुक्रम से विशेषता और विधि लेते हैं।
पिछले अध्याय में, हमने सीखा कि कैसेऑब्जेक्ट कंस्ट्रक्टर:
इंस्टांस
function Person(first, last, age, eyecolor) { this.firstName = first; this.lastName = last; this.age = age; this.eyeColor = eyecolor; } var myFather = new Person("Bill", "Gates", 62, "blue"); var myMother = new Person("Steve", "Jobs", 56, "green");
हमने महसूस किया है, आपअसंभवमौजूदा ऑब्जेक्ट के कंस्ट्रक्टर में नई विशेषता जोड़ना:
इंस्टांस
Person.nationality = "English";
यदि आपको कंस्ट्रक्टर में एक नई विशेषता जोड़नी है, तो इसे कंस्ट्रक्टर फ़ंक्शन में जोड़ना होगा:
इंस्टांस
function Person(first, last, age, eyecolor) { this.firstName = first; this.lastName = last; this.age = age; this.eyeColor = eyecolor; this.nationality = "English"; }
वंशानुक्रम
सभी JavaScript ऑब्जेक्ट वंशानुक्रम से विशेषता और विधि लेते हैं।
तारीख ऑब्जेक्ट Date.prototype से उत्पन्न होता है। आयता ऑब्जेक्ट Array.prototype से उत्पन्न होता है। Person ऑब्जेक्ट Person.prototype से उत्पन्न होता है।
Object.prototype उत्पन्न वंशानुक्रम के शीर्ष पर है:
तारीख ऑब्जेक्ट, आयता ऑब्जेक्ट और Person ऑब्जेक्ट Object.prototype से उत्पन्न होते हैं।
ऑब्जेक्ट में विशेषता और विधि जोड़ना
कभी आप सभी दिये हुए तरीके के लिए मौजूदा ऑब्जेक्ट को नई विशेषता (या विधि) जोड़ना चाहते हैं।
कभी, आप ऑब्जेक्ट कन्स्ट्रक्टर को नए एट्रिब्यूट (या तरीके) जोड़ना चाहते हैं।
इस्तेमाल प्रोटोटाइप
एट्रिब्यूट
JavaScript प्रोटोटाइप एट्रिब्यूट आपको ऑब्जेक्ट कन्स्ट्रक्टर को नए एट्रिब्यूट्स जोड़ने देता है:
इंस्टांस
function Person(first, last, age, eyecolor) { this.firstName = first; this.lastName = last; this.age = age; this.eyeColor = eyecolor; } Person.prototype.nationality = "English";
JavaScript प्रोटोटाइप एट्रिब्यूट भी आपको ऑब्जेक्ट कन्स्ट्रक्टर को नए तरीके जोड़ने देता है:
इंस्टांस
function Person(first, last, age, eyecolor) { this.firstName = first; this.lastName = last; this.age = age; this.eyeColor = eyecolor; } Person.prototype.name = function() { return this.firstName + " " + this.lastName; };
केवल संशोधित करेंआप खुदका प्रोटोटाइप।कभी भी मानक JavaScript ऑब्जेक्ट के प्रोटोटाइप को संशोधित नहीं करें。
- पिछला पृष्ठ JS ऑब्जेक्ट कन्स्ट्रक्टर
- अगला पृष्ठ JS ऑब्जेक्ट रेफरेंस