async function getUserDetails(user) {
// 模拟异步操作,例如向服务器发送请求获取更多详细信息
return new Promise((resolve) => {
setTimeout(() => {
const newDetails = { additionalInfo: `Extra info for ${user.name}` };
resolve({...user, ...newDetails });
}, 1000);
});
}
async function processUsers(users) {
let newUsers = [];
for await (const user of users) {
const updatedUser = await getUserDetails(user);
newUsers.push(updatedUser);
}
return newUsers;
}
// 示例用法
const users = [
{ name: 'Alice', age: 30, address: '123 Wonderland' },
{ name: 'Bob', age: 25, address: '456 Elm St' }
];
processUsers(users).then((result) => {
console.log(result);
});