Stack and Queue Methods

Stack and Queue Methods – ECMAScript Array की एक विशेषता ये है कि हम इसके साथ push()pop() Methods को Use करके इसे एक Last In First Out (LIFO) Data Structure की तरह Use कर सकते हैं।

जब हम किसी Array के साथ इन Methods को Use करते हैं, तब हम उस Array को एक Stack की तरह उपयोग में ले सकते हैं, जिसमें एक ही सिरे से Elements Insert व Delete हो सकते हैं।

जब हम किसी Array में नया Value Insert करना चाहते हैं, तब हमें Array के साथ push() Method को Call करना होता है जबकि Array के Top Item को Remove करने के लिए हमें Array के साथ pop() Method को Use करना होता है।

push() Method में हम जितने चाहें उतने Items Argument के रूप में Pass कर सकते हैं, जबकि pop() Method एक बार में केवल एक ही Item को Array List के Top या Last से Remove करता है और Array की length Property को एक कम कर देता है। Array के साथ इन Methods को हम निम्नानुसार Use कर सकते हैं:

[code]
  var colors = new Array();                  //create an array
  var count = colors.push("red", "green");   //push two items
  alert(count);                              //2
  count = colors.push("black");              //push another item on
  alert(count);                              //3
  var item = colors.pop();                   //get the last item
  alert(item);                               //"black"
  alert(colors.length);                      //2
[/code]

इन दोनों Stack Methods को हम किसी भी अन्‍य Method के साथ उपयोग में ले सकते हैं। जैसे-

[code]
  var colors = ["red", "blue"];
  colors.push("brown");            //add another item
  colors[3] = "black";             //add an item
  alert(colors.length);            //4
  var item = colors.pop();         //get the last item
  alert(item);                     //"black"
[/code]

Queue Methods

Stack की तरह ही हम Array को Queue की तरह भी उपयोग में ले सकते हैं जो कि Last In First Out (LIFO) Data Structure को Represent करता है। इस Data Structure में Array के एक सिरे से विभिन्न नए Data Items Insert होते हैं, जबकि दूसरे सिरे से Data Items Remove होते हैं।

चूंकि जब Array के एक सिरे से कोई Data Item Remove होता है, तब बाकी के सभी Data Items उस Element की Location पर Move या Shift होते हैं। इसलिए इस Shifting को Perform करने के लिए ECMAScript में shift() Method Define किया गया है, जो कि किसी Array के First Element को Remove करने का काम करता है और Array की length Property को एक कम कर देता है। shift() Method को push() Method के साथ Use करके हम JavaScript में एक Array को Queue की तरह Use कर सकते हैं। जैसे-

[code]
  var colors = new Array();                    //create an array
  var count = colors.push("red", "green");     //push two items
  alert(count);                                //2
  count = colors.push("black");                //push another item on
  alert(count);                                //3
  var item = colors.shift();                   //get the first item
  alert(item);                                 //"red"
  alert(colors.length);                        //2
[/code]

ECMAScript हमें एक unshift() Method भी Provide करता है, जो कि shift() Method का Exactly Reverse करता है। यानी इस Method को Use करके हम किसी Array के Front में एक या एक से ज्यादा Elements को उसी तरह से Insert कर सकते हैं, जिस तरह से हम push() Method का प्रयोग करके किसी Array के Last में एक या एक से ज्यादा Items को Insert करते हैं। जैसे-

[code]
  var colors = new Array();                    //create an array
  var count = colors.unshift("red", "green");  //push two items
  alert(count);                                //2
  count = colors.unshift("black");             //push another item on
  alert(count);                                //3
  var item = colors.pop();                     //get the first item
  alert(item);                                 //"green"
  alert(colors.length);                        //2
[/code]

वैसे यदि सम्भव हो तो unshift() Method को Use करने के बजाय किसी अन्‍य तरीके को ही Use करना चाहिए, क्योंकि Internet Explorer इस Method को ठीक से Handle नहीं करता।

Advavnce JavaScript in Hindiये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook Advance JavaScript in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी। 

Advance JavaScript in Hindi | Page: 669 | Format: PDF

BUY NOW GET DEMO REVIEWS