首页
题库
面试
求职
课程
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
如何解决异步回调地狱
[问答题]
请你简要介绍一下解决异步回调地狱的方法
添加笔记
求解答(0)
邀请回答
收藏(23)
分享
纠错
5个回答
添加回答
2
水泥厂搬砖骚年
异步回调地狱是指代码横向增长(比如在Promise对象里面循环嵌套了多个Promise对象)而不是竖向增长,这样的代码就会显得很复杂而且逻辑会变得混乱,可怕的是会写出强耦合的异步代码,后期修改的时候就嘿嘿嘿了。
解决方法:
1.用Promise的 .then 写成链式结构实现竖向增长
2.使用async await
3.使用Generator协程
发表于 2019-03-08 19:48:45
回复(0)
0
找呀找朋友
异步编程的解决方案有:回调函数、事件监听、发布订阅者、promise链式调用、generator、async/await。
传统的解决方案是使用回调函数,当请求逻辑复杂、层数过深时会导致回调地狱,不利于代码的维护。
promise作为异步编程的一种解决方案,但是当请求逻辑复杂时,promise会嵌套过多的异步代码,同样promise也会带来回调地狱的问题。
最佳方式是使用async/await的方式,他可以让我们以同步代码的书写方式去写异步代码,这是es6的语法
发表于 2020-08-10 20:18:54
回复(0)
0
友人说201904171536944
1.用Promise的 .then 写成链式结构实现竖向增长 2.使用async await 3.使用Generator协程
发表于 2019-04-26 19:09:31
回复(0)
0
求!!告别0offer
promise编程的then方法进行链式调用,或者generator遍历器,
发表于 2019-02-10 11:37:45
回复(0)
0
波比巴卜
Promise链式调用,或者async await异步回调
发表于 2019-01-01 19:02:07
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
前端工程师
Javascript
上传者:
小小
难度:
5条回答
23收藏
3027浏览
热门推荐
相关试题
ajax原理、如何实现刷新数据及优点?
迅雷
Javascript
评论
(7)
虚拟存储器不能解决的问题是()
操作系统
评论
(4)
关于进程的状态和状态转换,下列哪一...
操作系统
评论
(1)
使用全局置换算法,程序不可控制自身...
操作系统
评论
(1)
细胞周期中属于DNA合成期的是:
细胞生物学
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题