方法的顺序执行
// 方法顺序执行,不论同步还是异步以下代码实现方法顺序执行,不论同步还是异步,
let result;
for (const f of [func1, func2, func3]) {
result = await f(result);
}
更老版本的写法:
const applyAsync = (acc, val) => acc.then(val);
const composeAsync =
(...funcArr) =>
(x) =>
funcArr.reduce(applyAsync, Promise.resolve(x));
const transformData = composeAsync(func1, func2, func3);
const result3 = transformData(data);