जावास्क्रिप्ट में, स्टैक और हीप दो प्रकार की मेमोरी हैं जिनका उपयोग डेटा को प्रबंधित करने के लिए किया जाता है, प्रत्येक का एक अलग उद्देश्य होता है:
*स्टैक और हीप क्या हैं *
स्टैक: स्टैक का उपयोग स्थैतिक मेमोरी आवंटन के लिए किया जाता है, मुख्य रूप से आदिम प्रकार और फ़ंक्शन कॉल को संग्रहीत करने के लिए। यह एक सरल, लास्ट-इन, फ़र्स्ट-आउट (LIFO) संरचना है, जो इसे एक्सेस करने में बहुत तेज़ बनाती है।
हीप: हीप का उपयोग गतिशील मेमोरी आवंटन के लिए किया जाता है, जहां ऑब्जेक्ट और एरेज़ (गैर-आदिम प्रकार) संग्रहीत होते हैं। स्टैक के विपरीत, हीप अधिक जटिल है और पहुंच में धीमा है, क्योंकि यह लचीली मेमोरी आवंटन की अनुमति देता है।
स्टैक मेमोरी का उदाहरण:
let myName = "Amardeep"; //primitive type stored in stack let nickname = myName; // A copy of the value is created in the Stack nickname = "Rishu"; // Now changing the copy does not affect the original value . console.log(myName); // output => Amardeep (Original values remains unchanged since we are using stack) console.log(nickname); // output => rishu (only the copied value will changed)
इस उदाहरण में:
हीप मेमोरी का उदाहरण
अब देखते हैं कि हीप में गैर-आदिम डेटा प्रकार (ऑब्जेक्ट्स) को कैसे प्रबंधित किया जाता है।
let userOne = { // The reference to this object is stored in the Stack. email: "[email protected]", upi: "user@ybl" }; // The actual object data is stored in the Heap. let userTwo = userOne; // userTwo references the same object in the Heap. userTwo.email = "[email protected]"; // Modifying userTwo also affects userOne. console.log(userOne.email); // Output: [email protected] console.log(userTwo.email); // Output: [email protected]
इस उदाहरण में:
चाबी छीनना
*स्टैक मेमोरी * का उपयोग आदिम प्रकार और फ़ंक्शन कॉल को संग्रहीत करने के लिए किया जाता है। हर बार जब आप कोई मान निर्दिष्ट करते हैं, तो स्टैक में एक नई प्रतिलिपि बनाई जाती है।
*हीप मेमोरी * का उपयोग वस्तुओं और सरणियों को संग्रहीत करने के लिए किया जाता है। वेरिएबल जो एक ही ऑब्जेक्ट को संदर्भित करते हैं, मेमोरी में समान मेमोरी स्थान साझा करते हैं, इसलिए एक वेरिएबल को बदलने से दूसरे वेरिएबल प्रभावित होते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3