Nodejs学习(6)关于await和async

来源:互联网 发布:prim算法的意义 编辑:程序博客网 时间:2024/06/01 07:48

async的意思是异步
await的字面意思是等一下

还是比较形象的,通常来说,作为ES7的语法标准,async一般修饰一个函数,说明这个函数是异步的。await一般是用来执行异步操作的,很多情况下它的后面会跟着Promise对象

async和await提出的意义在于:用同步的方式处理异步!!

定时器是最常见的异步操作,先用它定义一个异步函数。

function sleep(){    setTimeout(()=>{        return 1    },3000)}

因为await后面跟着的是一个Promise对象。就把它封装一下:

let sleep = () => {    return new Promise((resolve,reject)=>{        setTimeout(() => {            resolve(2);        },3000)    })}async function aaa() {    let i = await sleep()    console.log(i);}aaa();

最终这样使用出来,3秒之后打印出2。但是如果sleep不用Promise封装,打印的就是undefined。

await可以异步执行一个函数。通常用于执行一个回调函数,await next();

需要注意的地方:除了await后面跟一个Promise,await必须在async定义的函数中使用。

原创粉丝点击