繁体   English   中英

异步/等待不起作用

[英]Async/await not working

我正在尝试首先将1号添加到console.log,但事实并非如此。 我究竟做错了什么?

谢谢。

let timer = function(time, message) {
    setTimeout((time) => {
        console.log(`ALERT: ${message}`);
    }, time);
  //return time;
}

const asyncDemo = async function asyncDemo(time, message) {
    try {
        var time1 = await timer(3000, "Number 1");
    } catch (e) {
        console.log("Critical error!");
    }
    try {
        var time2 = await timer(1000, "Number 2");
    } catch (e) {
        console.log("Critical error!");
    }
}

asyncDemo();

异步/等待取决于承诺的实现。 因此,您的函数需要返回承诺。 例如:

let timer = function(time, message) {
    return new Promise((resolve, reject) =>{
            setTimeout((time) => {
                console.log(`ALERT: ${message}`);
                resolve()
            }, time);

    }) 
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM