应用 ES6 的 内置对象 Promise, 让异步函数 按顺序执行的例子 如下:
上边 是四个用Promise 处理过的 异步执行的函数: fn1、fn2、fn3、fn4
下面,让其按顺序执行 如下:
测试代码:
const fn1 = () => {
return new Promise((resolve, reject) => {
setTimeout(() => {
console.log(111)
resolve()
}, 100);
})
}
const fn2 = () => {
return new Promise((resolve, reject) => {
setTimeout(() => {
console.log(222)
resolve()
}, 300);
})
}
const fn3 = () => {
return new Promise((resolve, reject) => {
setTimeout(() => {
console.log(333)
resolve()
}, 200);
})
}
const fn4 = () => {
return new Promise((resolve, reject) => {
setTimeout(() => {
console.log(444)
resolve()
}, 50);
})
}
// 顺序执行函数
fn1()
.then(fn2)
.then(fn3)
.then(fn4)