JavaScript में एक साधारण स्टैक क्लास पर विचार करें।
उदाहरण
class Stack { constructor(maxSize) { // यदि प्रदान नहीं किया गया तो डिफ़ॉल्ट अधिकतम आकार सेट करें if (isNaN(maxSize)) { maxSize = 10; } this.maxSize = maxSize; // एक एरे इनिशियलाइज़ करें जिसमें स्टैक मान होंगे। this.container = []; } // इस क्लास को विकसित करते समय सामग्री देखने के लिए एक मेथड display() { console.log(this.container); } // जांचें कि एरे खाली है या नहीं isEmpty() { return this.container.length === 0; } // जांचें कि एरे भरा हुआ है या नहीं isFull() { return this.container.length >= maxSize; } push(element) { // जांचें कि स्टैक भरा हुआ है या नहीं if (this.isFull()) { console.log("Stack Overflow!"); return; } this.container.push(element); } }
यहां isFull फ़ंक्शन बस जांचता है कि कंटेनर की लंबाई maxSize के बराबर या अधिक है या नहीं और तदनुसार लौटाता है। isEmpty फ़ंक्शन जांचता है कि कंटेनर का आकार 0 है या नहीं। पुश फ़ंक्शन का उपयोग स्टैक में नए एलिमेंट्स जोड़ने के लिए किया जाता है।
इस खंड में, हम इस क्लास में POP ऑपरेशन जोड़ने जा रहे हैं। स्टैक से एलिमेंट्स पॉप करने का अर्थ है उन्हें एरे के शीर्ष से हटाना। हम कंटेनर एरे के अंत को एरे का शीर्ष मान रहे हैं क्योंकि हम इसके संबंध में सभी ऑपरेशन्स करेंगे। इसलिए हम पॉप फ़ंक्शन को इस प्रकार लागू कर सकते हैं:
उदाहरण
pop() { // जांचें कि खाली है या नहीं if (this.isEmpty()) { console.log("Stack Underflow!"); return; } this.container.pop(); }
आप जांच सकते हैं कि यह फ़ंक्शन ठीक काम कर रहा है या नहीं:
उदाहरण
let s = new Stack(2); s.display(); s.pop(); s.push(20); s.push(30); s.pop(); s.display();
आउटपुट
यह आउटपुट देगा:
[] Stack Underflow! [ 20 ]