shift() मेथड
shift() मेथड ऐरे के पहले एलिमेंट को हटाता है और उस हटाए गए एलिमेंट को लौटाता है। यह ऐरे की लंबाई को 1 से कम कर देता है और सभी शेष एलिमेंट्स के इंडेक्स को 1 से घटा देता है।
pop() से अंतर
| मेथड | कहाँ से हटाता है | लौटाता है |
|---|---|---|
shift() | शुरुआत (इंडेक्स 0) | हटाया गया एलिमेंट |
pop() | अंत (अंतिम इंडेक्स) | हटाया गया एलिमेंट |
उदाहरण
<html> <body> <p id="demo"></p> <script>
var numbers = [1, 2, 3, 4, 5];
var fruits = ["apple", "mango", "banana", "guava", "strawberry"];
var removedNum = numbers.shift(); // 1 हटाता है
var removedFruit = fruits.shift(); // "apple" हटाता है
document.write("हटाया गया नंबर: " + removedNum + "<br>");
document.write("हटाया गया फल: " + removedFruit + "<br>");
document.write("शेष नंबर: " + numbers + "<br>");
document.getElementById("demo").innerHTML = "शेष फल: " + fruits;
</script> </body> </html>
आउटपुट
हटाया गया नंबर: 1 हटाया गया फल: apple शेष नंबर: 2,3,4,5 शेष फल: mango,banana,guava,strawberry
विशेषताएं
- म्यूटेटिंग मेथड - मूल ऐरे बदल जाता है
- खाली ऐरे पर
undefinedलौटाता है - सभी एलिमेंट्स को री-इंडेक्स करता है (O(n) ऑपरेशन)
- क्यू (Queue) डेटा स्ट्रक्चर में FIFO के लिए उपयोगी
परफॉरमेंस नोट
बड़े ऐरे पर shift() धीमा हो सकता है क्योंकि सभी एलिमेंट्स को शिफ्ट करना पड़ता है। ऐसे मामलों में deque पैटर्न या इंडेक्स ट्रैकिंग बेहतर होती है।
संबंधित मेथड्स
unshift()- शुरुआत में एलिमेंट जोड़ता हैpush()- अंत में एलिमेंट जोड़ता हैpop()- अंत से हटाता है