Promise笔记4

本文详细介绍了async函数和await表达式的工作原理。async函数返回一个Promise对象,其结果取决于函数的返回值。如果没有return,Promise会resolveundefined。await用于等待Promise结果,非Promise值会被立即返回,而Promise则会在fulfilled时返回其resolve的参数。await必须在async函数内使用,当Promise失败时,会抛出异常需要try...catch处理。
摘要由CSDN通过智能技术生成

async 与 await

async 函数

函数的返回值为 promise 对象 ,promise 对象的结果由 async 函数执行的返回值决定(成功的时候传入的值),如果没有在async函数中写return,那么Promise对象resolve的值就是undefined

await 表达式

await 右侧的表达式一般为 promise 对象, 但也可以是其它的值
如果不是 promise , await会阻塞后面的代码,先执行async外面的同步代码,同步代码执行完,再回到async内部,把这个非promise的东西,作为 await表达式的结果。
如果是 promise 对象,await 也会暂停async后面的代码,先执行async外面的同步代码,等着 Promise 对象 fulfilled,然后把 resolve 的参数作为 await 表达式的运算结果。

await 必须写在 async 函数中, 但 async 函数中可以没有 await
如果 await 的 promise 失败了, 就会抛出异常, 需要通过 try…catch 捕获处理

function test1() {
   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值