看了很多博客,感觉都说不清楚,自己总结一下:
1.
`async`关键字修饰的函数,会自动返回一个`Promise`对象。
即使你没有return,也会返回一个空的`Promise`对象。这样就不必自己再去new Promise对象了。
2. `await`关键字只能在`async`函数内部使用,否则报错,
原因是await需要在异步上下文中运行
。await指向一个异步函数,解析这个异步函数的`Promise`对象的结果直到完成,并返回解析后的值。所以await指向的函数,必定是被async关键字修饰的异步函数或是已经自己主动返回了promise对象,不然怎么被await解析。解析完成后才继续执行后续代码,起到了使异步变同步的效果。
3. 使用`async`和`await`可以
简化异步编程
,
`await`可以让异步操作以同步的方式执行
,提供了更简洁直观的写法,使得异步编程更具可读性和可维护性。
4. 虽然`await`会暂停当前函数的执行,但它
并不会阻塞整个 JavaScript 运行时环境
,其他代码和事件仍然可以继续执行。
总的来说,`async`和`await`是用于处理异步操作的语法糖,它们使得异步代码更易于编写、理解和维护,同时提供了一种更接近同步代码的写法。
版权声明:本文为weixin_41763571原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。