//模拟网络请求任务
const timeout = (time) => {
return new Promise((resolve) => {
setTimeout(() => {
resolve("time is:" + time);
}, time);
});
};
const scheduler = new Scheduler();
const addTask = (time, order) => {
return new Promise((resolve, reject) => {
Promise.resolve(scheduler.add(() => timeout(time))).then(
resolve,
reject
);
});
};
Promise.all([
addTask(1000, "1"),
addTask(500, "2"),
addTask(300, "3"),
addTask(400, "4"),
]).then((res) => {
console.log(res);
});