在Promise链中使用async/await或.then()来确保Promise按照添加顺序解决。
示例代码:
// 使用async/await的示例
async function orderPromise() {
const promise1 = new Promise((resolve) => setTimeout(() => resolve(1), 1000));
const promise2 = new Promise((resolve) => setTimeout(() => resolve(2), 500));
const promise3 = new Promise((resolve) => setTimeout(() => resolve(3), 100));
const result1 = await promise1;
const result2 = await promise2;
const result3 = await promise3;
console.log(result1, result2, result3);
}
orderPromise(); // 输出:1 2 3
// 使用.then()的示例
Promise.resolve()
.then(() => new Promise((resolve) => setTimeout(() => resolve(1), 1000))))
.then((result) => {
console.log(result); // 输出:1
return new Promise((resolve) => setTimeout(() => resolve(2), 500));
})
.then((result) => {
console.log(result); // 输出:2
return new Promise((resolve) => setTimeout(() => resolve(3), 100));
})
.then((result) => {
console.log(result); // 输出:3
});