setTimeout(()=>{
console.log('time out')
},3000)
}
go();
console.log('app')
这是异步代码,我想在延迟后打印应用程序,但我们知道“应用程序”先打印,然后“超时”。
最佳答案
您可以通过两种方式处理异步任务:-
- 使用 Promise 和 then 方法
- 使用异步/等待方法
第一种方法:-
function promiseFunction() {
return new Promise((resolve, reject) => {
setTimeout(()=>{
console.log('completed task and resolve');
resolve()
},3000)
})
}
promiseFunction().then(() => {
console.log('all task completed with your message (app)');
})
第二种方式:-
asyncFunction();
function promiseFunction() {
return new Promise((resolve, reject) => {
setTimeout(()=>{
console.log('completed task and resolve');
resolve()
},3000)
})
}
async function asyncFunction() {
await promiseFunction();
console.log('all task completed with your message (app)');
}
P.S 请确保您的await 关键字应位于异步函数中。
关于node.js - 我想学习如何处理异步代码的 Node js 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58709143/