js异步执行-函数批量异步执行-每隔1秒执行一次函数

 

 

es7给出了一个新的语法,让异步方法同步起来没有那么困难了,看代码: 

/*
*   模拟网络请求的函数
*/
function request(param) {
    return new Promise((resolve) => {
        let time = Math.random() * 1000                 //为了模拟每次请求的时长不同,这里每次等待随机时间0到1s
        setTimeout(() => resolve({param, time}), time)              //请求结束之后,调用回调函数
    })
}

async function start() {
    let {param: p1, time: t1} = await request(1)
    console.log(p1, t1)
    let {param: p2, time: t2} = await request(2)
    console.log(p2, t2)
    let {param: p3, time: t3} = await request(3)
    console.log(p3, t3)
}

start()

 

平时也能遇到其他的异步方法, 但是都没有看起来能批量执行的,要不就是一层回调函数淘一层回调函数,最后导致层级太多,代码看起来太乱.

上面的代码就能好的解决了函数异步批量执行,代码看起来规整很多,希望对大家有所帮助!!!!!

 

posted @ 2022-02-12 14:00  全栈九九六  阅读(72)  评论(0编辑  收藏  举报