"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > Async जावास्क्रिप्ट को समझना

Async जावास्क्रिप्ट को समझना

2024-11-07 को प्रकाशित
ब्राउज़ करें:143

Understanding Async JavaScript

जावास्क्रिप्ट एक एकल-थ्रेडेड भाषा है, जिसका अर्थ है कि यह एक समय में केवल एक ही काम कर सकती है। हालाँकि, वेब एप्लिकेशन को अक्सर सर्वर से डेटा लाने जैसे कार्य करने की आवश्यकता होती है, जिसमें कुछ समय लग सकता है। यदि जावास्क्रिप्ट को आगे बढ़ने से पहले प्रत्येक कार्य के पूरा होने तक इंतजार करना पड़ता है, तो यह आपके वेब ऐप को धीमा और अनुत्तरदायी बना देगा। यहीं पर एसिंक्रोनस (async) जावास्क्रिप्ट आता है।

एसिंक जावास्क्रिप्ट क्या है?

एसिंक्रोनस जावास्क्रिप्ट आपके कोड को एक कार्य शुरू करने और फिर उस कार्य के पूरा होने की प्रतीक्षा करते हुए अन्य कार्यों पर जाने की अनुमति देता है। एक बार कार्य समाप्त हो जाने पर, आपका कोड वापस आ सकता है और परिणाम संभाल सकता है। यह आपके ऐप को तेज़ और प्रतिक्रियाशील बनाए रखने में मदद करता है।

Async JavaScript में मुख्य अवधारणाएँ

  1. सिंक्रोनस बनाम एसिंक्रोनस:

    • सिंक्रोनस: प्रत्येक कार्य प्रारंभ करने से पहले पिछले कार्य के समाप्त होने की प्रतीक्षा करता है। उदाहरण के लिए:
     console.log("Start");
     let result = someFunction(); // This might take a while
     console.log("End");
    

    सिंक्रोनस कोड में, "एंड" संदेश केवल someFunction() पूरा होने के बाद ही लॉग किया जाएगा, जो चीजों को धीमा कर सकता है।

  • एसिंक्रोनस: कार्य स्वतंत्र रूप से शुरू और समाप्त हो सकते हैं, इसलिए आपका कोड प्रतीक्षा में अटकता नहीं है। उदाहरण के लिए:

     console.log("Start");
     setTimeout(() => {
         console.log("End");
     }, 2000);
    

    यहां, "समाप्ति" संदेश 2 सेकंड के बाद लॉग किया जाएगा, लेकिन इस बीच, आपका कोड अन्य काम करना जारी रख सकता है।

  1. कॉलबैक:

    • कॉलबैक एक फ़ंक्शन है जो किसी अन्य फ़ंक्शन के तर्क के रूप में पारित किया जाता है, जिसे कार्य पूरा होने के बाद निष्पादित किया जाएगा।
    • उदाहरण:
     function fetchData(callback) {
         setTimeout(() => {
             let data = "Some data";
             callback(data);
         }, 2000);
     }
    
     fetchData((data) => {
         console.log(data); // This will log "Some data" after 2 seconds
     });
    
  • कॉलबैक एसिंक कार्यों को संभालने का मूल तरीका था, लेकिन वे जटिल हो सकते हैं, खासकर यदि आपके पास प्रबंधित करने के लिए कई कार्य हैं (इसे "कॉलबैक नरक" के रूप में जाना जाता है)।
  1. वादे:

    • एक वादा एक वस्तु है जो एक अतुल्यकालिक कार्य के अंतिम समापन (या विफलता) और उसके परिणामी मूल्य का प्रतिनिधित्व करती है।
    • उदाहरण:
     let promise = new Promise((resolve, reject) => {
         let success = true;
         if (success) {
             resolve("Task completed successfully!");
         } else {
             reject("Task failed!");
         }
     });
    
     promise.then((message) => {
         console.log(message);
     }).catch((error) => {
         console.log(error);
     });
    
  • समाधान: यदि कार्य सफलतापूर्वक पूरा हो जाता है, तो वादा एक मूल्य के साथ "समाधान" हो जाता है।
  • अस्वीकार: यदि कार्य विफल हो जाता है, तो एक त्रुटि संदेश के साथ वादा "अस्वीकार" कर दिया जाता है।
  • .then(): यदि वादा पूरा हो जाता है तो लौटाए गए मूल्य को संभालता है।
  • .catch(): यदि वादा अस्वीकार कर दिया जाता है तो त्रुटि को संभालता है।
  1. Async/प्रतीक्षा:

    • async और await आधुनिक जावास्क्रिप्ट विशेषताएं हैं जो वादों के साथ काम करना आसान और अधिक पठनीय बनाती हैं।
    • async: async के साथ घोषित एक फ़ंक्शन हमेशा एक वादा लौटाएगा।
    • प्रतीक्षा करें: वादा पूरा होने तक एसिंक फ़ंक्शन के निष्पादन को रोक देता है।
    • उदाहरण:
     async function fetchData() {
         try {
             let data = await someAsyncTask();
             console.log(data);
         } catch (error) {
             console.error("Error:", error);
         }
     }
    
  • इस उदाहरण में, कोड की अगली पंक्ति पर जाने से पहले कुछ AsyncTask के पूरा होने की प्रतीक्षा करने के लिए wait कीवर्ड का उपयोग किया जाता है। यदि कार्य विफल हो जाता है, तो त्रुटि पकड़ी जाती है और कैच ब्लॉक में नियंत्रित की जाती है।

सारांश

  • Async JavaScript आपके कोड को एक ही समय में कई कार्यों को संभालने की अनुमति देकर आपके ऐप को धीमा और अनुत्तरदायी होने से रोकने में मदद करता है।
  • कॉलबैक ऐसे फ़ंक्शन हैं जो एसिंक कार्य पूरा होने के बाद चलते हैं, लेकिन जटिल कार्यों के साथ गड़बड़ हो सकते हैं।
  • वादे भविष्य में पूरे किए जाने वाले कार्यों का प्रतिनिधित्व करते हुए एसिंक संचालन को संभालने का एक साफ-सुथरा तरीका प्रदान करते हैं।
  • Async/Await एक आधुनिक सिंटैक्स है जो वादों के साथ काम करना आसान और अधिक पठनीय बनाता है।

उत्तरदायी, कुशल वेब एप्लिकेशन बनाने के लिए एसिंक जावास्क्रिप्ट को समझना आवश्यक है, क्योंकि यह आपके कोड को धीमे संचालन के पूरा होने की प्रतीक्षा में अटके बिना कार्य करने की अनुमति देता है।

विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/vincod/understand-async-javascript-2l74?1 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए [email protected] से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3