tnblog
首页
视频
资源
登录

JS执行队列

4965人阅读 2023/7/19 10:26 总访问:268922 评论:0 收藏:0 手机
分类: 前端
let promises = [];
/**
*
* @param {*} 执行Promise 执行完毕执行下一条
* @returns reduce为数组中的每一个元素依次执行回调函数
*/
function runPromiseByQueue(myPromises) {
    return myPromises.reduce(
        (previousPromise, nextPromise) =>
            previousPromise.then(() => {
            return nextPromise();
            }),
         Promise.resolve()
    );
}
/**
*
* @param {*} item 数据
* @returns 创建执行消息队列 Promise
*/
function createPromise(item) {
    return function() {
        return new Promise(resolve => {
            //请求接口执行完毕 resolve 返回
            this.接口().then(res => {
            resolve();
            });
        });
    };
}
//数据集合创建Promise对象集合
数据集合.map(item => {
    promises.push(createPromise(item));
});
//执行Promise集合
runPromiseByQueue(promises).then(() => {
//执行完毕
});


评价
若人生只如初见,愿还是相遇的那个下午,阳光明媚转身一笑便如春暖花开
排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2024TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术