这是一项任务的答案,我不确定变量作业中带有 * 的行在添加时是否包含一个承诺,就我而言,为了使 fetch 函数的结果完全在作业中,它必须在await之前
async function getUsers(names) {
let jobs = [];
for(let name of names) {
let job = fetch(`https://api.github.com/users/${name}`).then(
successResponse => {
if (successResponse.status != 200) {
return null;
} else {
return successResponse.json();
}
},
failResponse => {
return null;
}
);
jobs.push(job); //*
}
let results = await Promise.all(jobs);
return results;
}
getUsers([1,2,3,4,5]).then(n => console.log(n))
像这样更正确: