const fetchData = async (id) => {
return new Promise((resolve) => {
setTimeout(() => resolve(`Data for ID ${id}`), 100);
});
};
const ids = [1, 2, 3];
async function complexAsyncFetch(ids) {
const result = await ids.reduce(async (acc, id) => {
const data = await fetchData(id);
const currentResult = await acc;
currentResult.push(data);
return currentResult;
}, Promise.resolve([]));
console.log(result);
}
complexAsyncFetch(ids);Ответ: ['Data for ID 1', 'Data for ID 2', 'Data for ID 3']
JavaScript test | #JavaScript