Promise实现队列

遍历数组[1,2,3,4,5],每个1秒输出一个数字。

function queue(arr) {
    let promise = Promise.resolve();
    arr.forEach(val => {
        promise = promise.then(() => {
            return new Promise(resolve => {
                setTimeout(() => {
                    resolve(val);
                }, 1000)
            }).then(val => {
                console.log(val);
            })
        })
    });
}

queue([1,2,3,4,5])
posted @ 2018-10-31 17:01  meetqy  阅读(664)  评论(0编辑  收藏  举报