用promise代替回调函数

用promise代替回调函数


在这里插入图片描述

如图,我要实现的功能就是,使用getread这个封装好的方法,先读取1.txt的内容,再读取2.txt的内容,再读取3.txt的内容。
这个代码是能实现我要实现的功能,但是这是一个很糟糕的代码,因为这样的代码其实就是出现了回调地狱,如果要继续写下去的话,只会的是无尽的回调,回调的太多了。
后来我找到了一个好的优化方法,就是使用promise
在这里插入图片描述
在这里插入图片描述
在promise上有两个函数,resolve是成功之后回调函数,reject是失败的回调函数,失败的函数可以不传,但是成功的回调函数必须传
我们可以在new出来的promise实例上调用.then方法,预先为这个promise操作指定成功和失败的回调函数
当读取完第一个文件的时候,将结果return出去,其实得到的是一个新的promise,对一个新的promise,可以继续给他定义失败和成功的回调函数。
我个人觉得promise最大的优化就是将嵌套的代码变成了平行的代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值