解决方法:
function asyncFunc1() {
return new Promise((resolve, reject) => {
// 异步操作
setTimeout(() => {
resolve('结果1');
}, 1000);
});
}
function asyncFunc2() {
return new Promise((resolve, reject) => {
// 异步操作
setTimeout(() => {
resolve('结果2');
}, 2000);
});
}
function asyncFunc3() {
return new Promise((resolve, reject) => {
// 异步操作
setTimeout(() => {
resolve('结果3');
}, 1500);
});
}
asyncFunc1()
.then(result1 => {
console.log(result1);
return asyncFunc2();
})
.then(result2 => {
console.log(result2);
return asyncFunc3();
})
.then(result3 => {
console.log(result3);
})
.catch(error => {
console.error(error);
});
async function getResult() {
try {
const result1 = await asyncFunc1();
console.log(result1);
const result2 = await asyncFunc2();
console.log(result2);
const result3 = await asyncFunc3();
console.log(result3);
} catch (error) {
console.error(error);
}
}
getResult();
以上两种方法都可以确保按照预定顺序获得结果,具体使用哪种方法取决于项目的需求和个人喜好。
上一篇:按照元组中的整数值比较的列表列表
下一篇:按照预定义的步长迭代列表