जावास्क्रिप्ट एक सिंक्रोनस, सिंगल-थ्रेडेड भाषा है जो एक समय में केवल एक कमांड निष्पादित कर सकती है। वर्तमान लाइन का निष्पादन समाप्त होने के बाद ही यह अगली पंक्ति में जाएगा। हालाँकि, जावास्क्रिप्ट इवेंट लूप, प्रॉमिस, एसिंक/वेट और कॉलबैक कतार का उपयोग करके अतुल्यकालिक संचालन कर सकता है (जावास्क्रिप्ट डिफ़ॉल्ट रूप से सिंक्रोनस है)।
जावास्क्रिप्ट कोड कैसे निष्पादित किया जाता है?
जावास्क्रिप्ट में सब कुछ एक निष्पादन संदर्भ के अंदर होता है (इसे एक बड़े बॉक्स या कंटेनर के रूप में सोचें)। संपूर्ण जावास्क्रिप्ट कोड इस निष्पादन संदर्भ में निष्पादित किया जाता है। इसके दो घटक हैं: मेमोरी घटक (परिवर्तनीय वातावरण) और कोड घटक (निष्पादन का धागा)।
सबसे पहले, एक वैश्विक निष्पादन संदर्भ बनाया जाता है। इसके भीतर, प्रत्येक फ़ंक्शन अपना स्वयं का निष्पादन संदर्भ बनाता है।
कोड की किसी भी पंक्ति को निष्पादित करने से पहले, सभी चर और कार्यों के लिए मेमोरी आवंटित की जाती है।
मेमोरी आवंटन के बाद कोड कैसे निष्पादित किया जाता है?
जावास्क्रिप्ट इंजन पूरे प्रोग्राम को फिर से चलाता है (पंक्ति दर पंक्ति) और कोड निष्पादित करता है।
आइए निम्नलिखित उदाहरण देखें:
function add(a,b){ var ans = a b; console.log(ans); } var addition = add(6,5);
इस उदाहरण में, पहले एक वैश्विक निष्पादन संदर्भ बनाया जाता है, जिसमें दो घटक होते हैं: मेमोरी कंपोनेंट (एमसी) और कोड कंपोनेंट (सीसी)।
फ़ंक्शन के लिए, संपूर्ण फ़ंक्शन कोड मेमोरी में संग्रहीत होता है। वेरिएबल्स के लिए, एक विशेष मान, अपरिभाषित, प्रारंभ में संग्रहीत किया जाता है।
जब फ़ंक्शन लागू किया जाता है, तो एक अन्य निष्पादन संदर्भ बनाया जाता है। मेमोरी कंपोनेंट में, पैरामीटर (a = 6, b = 5) के मान संग्रहीत होते हैं, जबकि ans जैसे वेरिएबल प्रारंभ में मान को अपरिभाषित रखते हैं। कोड घटक में, मेमोरी घटक के मानों का उपयोग ऑपरेशन करने के लिए किया जाता है (ए बी = 6 5 = 11)। फिर परिणाम कंसोल पर मुद्रित होता है।
मुझे आशा है कि यह स्पष्टीकरण अवधारणा को स्पष्ट करता है। यदि आपका कोई प्रश्न या सुधार है, तो बेझिझक टिप्पणी अनुभाग में पूछें।
अक्षय सैनी को श्रेय (संदर्भ:[(https://youtu.be/iLWTnMzWtj4?si=WWMxDHM-v532vY7F)])
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3