⊗jsSpACInr 155 of 294 menu

जावास्क्रिप्ट में कॉलबैक के साथ अतुल्यकालिक कोड

मान लीजिए कि हमारे पास कुछ अतुल्यकालिक फ़ंक्शन है:

function make() { setTimeout(function() { console.log('1'); }, 3000); }

मान लीजिए कि हम इस फ़ंक्शन का उपयोग इस प्रकार करते हैं:

make(); console.log('2'); // पहले निष्पादित होगा

मान लीजिए कि हम ऐसा करना चाहते हैं कि दूसरा कंसोल आउटपुट तब निष्पादित हो, जब फ़ंक्शन के अंदर अतुल्यकालिक ऑपरेशन निष्पादित हो जाए। इसके लिए उपयोग किए जाने वाले दृष्टिकोणों में से एक कॉलबैक का उपयोग है: प्रतीक्षारत कोड को एक अनाम फ़ंक्शन में लपेटें और इसे फ़ंक्शन make में पैरामीटर के रूप में पास करें:

make(function() { console.log('2'); });

निःसंदेह, यह अपने आप में हमारी समस्या का समाधान नहीं करेगा। अभी हमने केवल यह समझौता किया है: make के ट्रिगर होने के बाद कोड निष्पादित करने की इच्छा होने पर इस कोड को कॉलबैक के रूप में make कॉल में पास करें

make फ़ंक्शन के कोड को ठीक करें ताकि यह हमारे समझौते के अनुसार काम करना शुरू कर दे:

function make(callback) { setTimeout(function() { console.log('1'); // कोई अतुल्यकालिक ऑपरेशन, एक या अधिक भी हो सकते हैं callback(); // फिर हमारा कॉलबैक }, 3000); }

बताएं कि कंसोल में संख्याएँ किस क्रम में प्रदर्शित होंगी:

function make(callback) { setTimeout(function() { console.log('1'); callback(); }, 3000); } make(function() { console.log('2'); console.log('3'); });
ruuzlbyazkk