जैसा कि मैं समझता हूं कि एक वादा कुछ ऐसा है जो हल() या अस्वीकार कर सकता है() लेकिन मुझे यह पता लगाने के लिए आश्चर्य हुआ कि वादे में उस कोड को हल करने या अस्वीकार करने के बाद निष्पादित करना जारी है।किसी संकल्प के बाद जावास्क्रिप्ट ES6 वादा निष्पादन जारी क्यों करता है?
मुझे निकास या वापसी के एसिंक-अनुकूल संस्करण होने का संकल्प या अस्वीकार माना जाता है, जो सभी तत्काल कार्य निष्पादन को रोक देगा।
var call = function() {
return new Promise(function(resolve, reject) {
resolve();
console.log("Doing more stuff, should not be visible after a resolve!");
});
};
call().then(function() {
console.log("resolved");
});
उचित सवाल है, लेकिन फिर, जे एस सिर्फ एक के बाद एक बयान की तरह आप के लिए यह करने के लिए बता निष्पादित करता है। 'हल() 'एक जेएस कंट्रोल स्टेटमेंट नहीं है जो जादुई रूप से' रिटर्न 'का असर होगा, यह सिर्फ एक फंक्शन कॉल है, और हां, उसके बाद निष्पादन जारी है। –
यह एक अच्छा सवाल है, और सभी प्रतिक्रियाओं को पढ़ने के बाद भी, मुझे सर्वोत्तम प्रथाओं के बारे में निश्चित नहीं है ... –