जावास्क्रिप्ट कक्षाएं

इस ट्यूटोरियल में, आप उदाहरणों की मदद से जावास्क्रिप्ट कक्षाओं के बारे में जानेंगे।

कक्षाएं जावास्क्रिप्ट के ईएस 6 संस्करण में शुरू की गई सुविधाओं में से एक हैं ।

एक वर्ग वस्तु के लिए एक खाका है। आप क्लास से ऑब्जेक्ट बना सकते हैं।

आप क्लास को एक घर का स्केच (प्रोटोटाइप) मान सकते हैं। इसमें फर्श, दरवाजे, खिड़कियां आदि के बारे में सभी विवरण शामिल हैं। इन विवरणों के आधार पर, आप घर का निर्माण करते हैं। घर की वस्तु है।

चूंकि कई घरों को एक ही विवरण से बनाया जा सकता है, हम एक वर्ग से कई ऑब्जेक्ट बना सकते हैं।

जावास्क्रिप्ट वर्ग बनाना

जावास्क्रिप्ट क्लास जावास्क्रिप्ट कंस्ट्रक्टर फ़ंक्शन के समान है, और यह केवल एक सिंटैक्टिक चीनी है।

निर्माण कार्य को इस प्रकार परिभाषित किया गया है:

 // constructor function function Person () ( this.name = 'John', this.age = 23 ) // create an object const person1 = new Person();

functionकीवर्ड का उपयोग करने के बजाय , आप classजेएस कक्षाएं बनाने के लिए कीवर्ड का उपयोग करते हैं। उदाहरण के लिए,

 // creating a class class Person ( constructor(name) ( this.name = name; ) )

classकीवर्ड एक वर्ग बनाने के लिए प्रयोग किया जाता है। गुण एक निर्माण कार्य में दिए गए हैं।

अब आप एक ऑब्जेक्ट बना सकते हैं। उदाहरण के लिए,

 // creating a class class Person ( constructor(name) ( this.name = name; ) ) // creating an object const person1 = new Person('John'); const person2 = new Person('Jack'); console.log(person1.name); // John console.log(person2.name); // Jack

यहाँ, person1और person2 Personवर्ग की वस्तुएँ हैं ।

नोट : constructor()किसी कक्षा के अंदर की विधि बनने पर हर बार स्वचालित रूप से कॉल किया जाता है।

जावास्क्रिप्ट कक्षा के तरीके

निर्माता फ़ंक्शन का उपयोग करते समय, आप निम्न विधियों को परिभाषित करते हैं:

 // constructor function function Person (name) ( // assigning parameter values to the calling object this.name = name; // defining method this.greet = function () ( return ('Hello'' + ' ' + this.name); ) )

जावास्क्रिप्ट वर्ग में विधियों को परिभाषित करना आसान है। आप बस उसके बाद विधि का नाम दें ()। उदाहरण के लिए,

 class Person ( constructor(name) ( this.name = name; ) // defining method greet() ( console.log(`Hello $(this.name)`); ) ) let person1 = new Person('John'); // accessing property console.log(person1.name); // John // accessing method person1.greet(); // Hello John

नोट : किसी वस्तु की विधि का उपयोग करने के लिए, आपको उसके नाम के बाद विधि का उपयोग करने की आवश्यकता है ()

गेटर्स एंड सेटर्स

जावास्क्रिप्ट में, गेट्टर मेथड्स को ऑब्जेक्ट का मान मिलता है और सेटर मेथड्स किसी ऑब्जेक्ट की वैल्यू सेट करते हैं।

जावास्क्रिप्ट कक्षाओं में गेटर्स और सेटर शामिल हो सकते हैं। आप getकीवर्ड का उपयोग गेट्टर विधियों के लिए और setसेटर विधियों के लिए करते हैं। उदाहरण के लिए,

 class Person ( constructor(name) ( this.name = name; ) // getter get personName() ( return this.name; ) // setter set personName(x) ( this.name = x; ) ) let person1 = new Person('Jack'); console.log(person1.name); // Jack // changing the value of name property person1.personName = 'Sarah'; console.log(person1.name); // Sarah

उत्थापन

उपयोग करने से पहले एक वर्ग को परिभाषित किया जाना चाहिए। फ़ंक्शन और अन्य जावास्क्रिप्ट घोषणाओं के विपरीत, वर्ग फहराया नहीं जाता है। उदाहरण के लिए,

 // accessing class const p = new Person(); // ReferenceError // defining class class Person ( constructor(name) ( this.name = name; ) )

जैसा कि आप देख सकते हैं, परिभाषित करने से पहले किसी कक्षा तक पहुँचना एक त्रुटि फेंकता है।

'सख्त का उपयोग करें'

कक्षाएं हमेशा 'उपयोग-सख्त' का पालन करती हैं। कक्षा के अंदर सभी कोड स्वचालित रूप से सख्त मोड में हैं। उदाहरण के लिए,

 class Person ( constructor() ( a = 0; this.name = a; ) ) let p = new Person(); // ReferenceError: Can't find variable: a

नोट : जावास्क्रिप्ट क्लास एक विशेष प्रकार का फंक्शन है। और typeofऑपरेटर functionएक वर्ग के लिए लौटता है ।

उदाहरण के लिए,

 class Person () console.log(typeof Person); // function

दिलचस्प लेख...