JavaScript में forEach लूप के अंदर async/await का सही उपयोग कैसे करें?
सभी को नमस्कार! मैं JavaScript में नया हूँ और असिंक्रोनस को समझने की कोशिश कर रहा हूँ। मेरे पास URL-addresses की एक array है, और मैं प्रत्येक से क्रमिक रूप से डेटा लोड करना चाहता हूँ, `async/await` का उपयोग करके। मैंने `forEach` का उपयोग करने का फैसला किया, लेकिन एक समस्या का सामना करना पड़ा: मेरा कोड प्रत्येक request के पूरा होने की प्रतीक्षा नहीं करता, बल्कि उन सभी को एक साथ चलाता है।
यहाँ मेरा कोड है:
```javascript
const urls = ['/api/user/1', '/api/user/2', '/api/user/3'];
async function fetchUserData(url) {
const response = await fetch(url);
return await response.json();
}
async function loadAllUsers() {
urls.forEach(async (url) => {
const userData = await fetchUserData(url);
console.log('User loaded:', userData);
});
console.log('All users loaded!');
}
loadAllUsers();
```
जब मैं यह कोड चलाता हूँ, तो मुझे कंसोल में `loadAllUsers()` को कॉल करने के तुरंत बाद "All users loaded!" संदेश दिखाई देता है, और उसके बाद ही user data आता है। `forEach` के अंदर `await` काम क्यों नहीं कर रहा है? मैं इसे सही तरीके से कैसे व्यवस्थित करूँ?