我正在尝试将第一个数字输入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();
答案 0 :(得分:5)
Ansync / Await取决于承诺的工作。所以你的函数需要返回一个promise。例如:
let timer = function(time, message) {
return new Promise((resolve, reject) =>{
setTimeout((time) => {
console.log(`ALERT: ${message}`);
resolve()
}, time);
})
}