🌐

प्रॉमिसेस और असिंक्रोनस टास्क

Jul 13, 2024

प्रॉमिसेस और असिंक्रोनस टास्क

सिंक्रोनस टास्क

  • सिंक्रोनस टास्क वो होते हैं जो एक ही सिंक में चलते हैं और परिणाम तुरंत देते हैं।
  • उदाहरण:
let a = 10; let b = 20; let result = a + b; console.log(result); // 30
  • कोड टॉप-टू-बॉटम एक्ज़ीक्यूट होता है और तुरंत परिणाम देता है।

असिंक्रोनस टास्क

  • असिंक्रोनस टास्क वो होते हैं जिनका परिणाम तुरंत नहीं मिलता।
  • ये टास्क कुछ समय के बाद परिणाम रिटर्न करते हैं।
  • उदाहरण:
fetch('URL_HERE') .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error('Error:', error));
  • असिंक्रोनस टास्क में परिणाम समय ले सकता है, जैसे किसी सर्वर से डेटा लाना।

प्रॉमिस

  • प्रॉमिस एक असिंक्रोनस टास्क का परिणाम है।
  • स्टेटस: resolved (सफल), rejected (असफल), या pending (प्रतीक्षित)।
  • प्रॉमिस हमें बताता है कि परिणाम आएगा, चाहे तुरंत ना आए।
  • उदाहरण:
let resultFromServer = fetch('URL_HERE'); console.log(resultFromServer); // प्रॉमिस की स्टेटस: pending

async और await

  • async फंक्शन को असिंक्रोनस टास्क को नियंत्रित करने के लिए उपयोग किया जाता है।
  • await शब्द एक असिंक्रोनस टास्क के परिणाम की प्रतीक्षा करने के लिए उपयोग किया जाता है।
  • उदाहरण:
async function getData() { let resultFromServer = await fetch('URL_HERE').then(response => response.json()); console.log(resultFromServer); } getData();

.then(), .catch(), और .finally()

  • .then(): जब प्रॉमिस सफल होता है तो क्या करना है।
  • .catch(): जब प्रॉमिस असफल होता है तो क्या करना है।
  • .finally(): प्रॉमिस के परिणाम की स्थिति चाहे जो भी हो, उसे अंत में क्या करना है।
  • उदाहरण:
fetch('URL_HERE') .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error('Error:', error)) .finally(() => console.log('Operation finished'));

निष्कर्ष

  • असिंक्रोनस टास्क हमें टास्क को बिना रोके आगे बढ़ने की अनुमति देते हैं।
  • प्रॉमिस और async/await का उपयोग हमें कोड को अधिक संरचित और स्पष्ट बनाने में मदद करता है।
  • आने वाले वीडियो में हम प्रॉमिस और असिंक्रोनस फंक्शंस पर और गहराई से चर्चा करेंगे।