Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Javascript

जावास्क्रिप्ट में एसिंक्रोनस फ़ंक्शंस और नोड इवेंट लूप


एसिंक्रोनस फ़ंक्शंस , कार्यक्रम चलते रहते हैं . यह इंतजार नहीं करता! इस तरह यूजर का वेटिंग टाइम कम हो जाता है। साथ ही, एक प्रोग्रामिंग भाषा के रूप में Javascript अपने आप में अतुल्यकालिक है।

उदाहरण के लिए, यदि कोड में हम एक महंगा अनुरोध चला रहे हैं, जिसके लिए बहुत अधिक समय की आवश्यकता हो सकती है, तो एक एसिंक्रोनस फ़ंक्शन के मामले में, प्रतीक्षा समय बहुत अधिक होगा, और उपयोगकर्ता नहीं होगा कुछ और भी करने में सक्षम हो!

इस प्रकार आम तौर पर हम महंगे और समय लेने वाले संचालन करते समय एसिंक्रोनस कोड का उपयोग करना पसंद करते हैं।

आइए जावास्क्रिप्ट में एनीक्रोनस फ़ंक्शन का एक उदाहरण लेते हैं -

उदाहरण

console.log('One');jQuery.get('page.html', function (data){ कंसोल.लॉग("दो");});console.log('Three'); 

आउटपुट

एक, दो, तीन

अब, देखते हैं कि नोड में इवेंट लूप क्या है।

इवेंट लूप एक थ्रेड शेड्यूल के अंदर बनाया जाता है जिसमें हमारे थ्रेड को किसी भी समय पर संचालन करना चाहिए।

किसी भी Node.js एप्लिकेशन में कॉलबैक शामिल होते हैं जो आने वाली कनेक्शन, I/O पूर्णता, टाइमआउट समाप्ति, वादा समाधान इत्यादि जैसी विभिन्न घटनाओं की प्रतिक्रिया में निष्पादित होते हैं। मुख्य थ्रेड (जिसे अब हम जानते हैं कि इवेंट लूप है) इन सभी कॉलबैक को निष्पादित करता है।

जब इवेंट लूप चल रहे होते हैं, तो प्रत्येक पुनरावृत्ति के लिए नोड जांचता है कि क्या यह किसी एसिंक्रोनस I/O या टाइमर की प्रतीक्षा कर रहा है। और अगर कुछ नहीं मिलता है, तो नोड उन्हें बंद कर देता है।


  1. जावास्क्रिप्ट में जबकि लूप

    जब तक कोई व्यंजक सत्य है, तब तक लूप का उद्देश्य किसी स्टेटमेंट या कोड ब्लॉक को बार-बार निष्पादित करना है। एक बार व्यंजक असत्य हो जाने पर, लूप समाप्त हो जाता है। उदाहरण उदाहरण के लिए - चलो i =0;जबकि (i <5) { कंसोल.लॉग (हैलो); मैं =मैं + 1;} आउटपुट यह आउटपुट देगा - नमस्कार

  1. encodeURI() और decodeURI() जावास्क्रिप्ट में कार्य करता है।

    encodeURI() फ़ंक्शन (, / ? :@ &=+ $ #) वर्णों को छोड़कर विशेष वर्णों सहित संपूर्ण URI को एन्कोड करता है। decodeURI () फ़ंक्शन encodeURI () फ़ंक्शन द्वारा उत्पन्न URI को डिकोड करता है। जावास्क्रिप्ट में encodeURI() और decodeURI() फ़ंक्शन के लिए कोड निम्नलिखित है - उदाहरण दस्तावेज़ बॉडी { फॉन्ट-फ़ैम

  1. जावास्क्रिप्ट में एसिंक्रोनस लूप को कैसे कार्यान्वित करें?

    जावास्क्रिप्ट में एसिंक्रोनस लूप को लागू करने के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>