你真的会用 Promise 吗,快来看看正确的写法!!!

本文探讨了解决回调地狱的三种方法:传统的Promise链式调用、升级版的return后续请求以及async/await的使用。通过对比,展示了async/await如何使代码更加清晰和易于理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个思路,是 受到 七月老师的教导的

当我们遇到回调地狱,通常都是怎么解决的呢,如果不使用 async/await,那么写出来的代码,大部分(包括我)都是又臭又长的,不忍直视,那么使用下面的写法,会更加赏心悦目哦

1.第一种,普通的写法

 bookModel.getHotList().then(res => {
      console.log(res)
      bookModel.getMyBookCount().then(res => {
        console.log(res)
        bookModel.getMyBookCount().then(res => {
          console.log(res)
        })
      })
    })

这只是简单的 三层嵌套,还没有加上处理的函数,便已经无法直视了

2. 升级版写法

bookModel.getHotList()
      .then(res => {
        console.log(res)
        return bookModel.getMyBookCount()
      })
      .then(res => {
        console.log(res)
        return bookModel.getMyBookCount()
      })
      .then(res => {
        console.log(res)
      })

就是把后续的请求 return 出去,在外面执行后续方法,怎么样,是不是看起来舒服了很多,更有条理性了呢

3. async/await 写法

async function network() {
	const res = await bookModel.getHotList()
	console.log(res)

	const res2 = await bookModel.getMyBookCount()
	console.log(res2)

	const res3 = await bookModel.getMyBookCount()
	console.log(res3)
}

async/await 太香啦!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值