收藏
回答

如何for循环一个异步的函数呢?


// 2s 之后返回双倍的值
function doubleAfter2seconds(num) {
    return new Promise((resolve, reject) => {
        setTimeout(() => {
            resolve(2 * num)
        }, 2000);
    } )
}
 
async function testResult() {
    let result = await doubleAfter2seconds(30);
    console.log(result);
}
 
testResult();

// 返回结果: 60

如果说希望循环输出结果,for应该怎么写呢?希望的结果如下:

第1次循环:60

第2次循环:60

第3次循环:60

第4次循环:60

最后一次编辑于  2019-11-20
回答关注问题邀请回答
收藏

1 个回答

  • 扭纹柴
    扭纹柴
    2019-11-20

    解决了:感谢大佬 @

    再分享一个:用 async/await 来处理异步

    // 2s 之后返回双倍的值
    function doubleAfter2seconds(num) {
        return new Promise((resolve, reject) => {
            setTimeout(() => {
                resolve(2 * num)
            }, 2000);
        } )
    }
     
    async function testResult() {
        for(i = 0; i <= 5; i++){
            let result = await doubleAfter2seconds(30);
            console.log(i);
            console.log(result);
        }
    }
     
    testResult();


    2019-11-20
    有用
    回复
登录 后发表内容
问题标签