𝗝𝗮𝘃𝗮𝗦𝗰𝗿𝗶𝗽𝘁 𝗦𝘆𝗻𝗰𝗵𝗿𝗼𝗻𝗼𝘂𝘀 𝗮𝗻𝗱 𝗔𝘀𝘆𝗻𝗰𝗵𝗿𝗼𝗻𝗼𝘂𝘀

JavaScript एक सिंगल थ्रेड (single thread) पर चलता है। इसका मतलब है कि यह एक समय में एक ही चीज़ को निष्पादित (execute) करता है। कुशल कोड लिखने के लिए आपको यह समझना होगा कि यह कार्यों (tasks) को कैसे संभालता है।

Synchronous JavaScript

Synchronous कोड लाइन दर लाइन चलता है। प्रत्येक कार्य पिछले कार्य के समाप्त होने की प्रतीक्षा करता है। इसे blocking कहा जाता है। यदि एक कार्य में लंबा समय लगता है, तो पूरा प्रोग्राम रुक जाता है।

Asynchronous JavaScript

Asynchronous कोड स्वतंत्र रूप से चलता है। कार्य प्रतीक्षा करते समय अन्य कोड को ब्लॉक नहीं करते हैं। इसे non-blocking कहा जाता है। कार्य बैकग्राउंड में शुरू होता है और समाप्त होने पर आपको सूचित करता है।

Asynchronous कार्यों को संभालने के तीन तरीके:

  1. Callbacks: एक फ़ंक्शन जो कार्य समाप्त होने के बाद चलता है।
  2. Promises: एक ऑब्जेक्ट जो किसी ऑपरेशन के पूरा होने या विफल होने का प्रतिनिधित्व करता है।
  3. Async/Await: सबसे स्वच्छ तरीका। यह थ्रेड को ब्लॉक किए बिना asynchronous कोड को synchronous कोड की तरह दिखाता है।

सामान्य asynchronous ऑपरेशन्स:

Event Loop इसे संभव बनाता है। यह एक साथ कई कार्यों को प्रबंधित करने के लिए Call Stack, Web APIs, और Callback Queue का उपयोग करता है।

Summary:

Source: https://www.geeksforgeeks.org/javascript/synchronous-and-asynchronous-in-javascript/ Source: https://www.w3schools.com/js/js_asynchronous.asp Source: https://medium.com/@mohdtalib.dev/what-is-synchronous-and-asynchronous-in-javascript-07adb7b4cc5f

Full post: https://dev.to/raja_b_0c9d242e2c26cf063b/javascript-synchronous-and-asynchronous-2a69