💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# 异步流程控制 > 全异步就应该有全异步的思维方式 ## 什么异步流程控制 大家都知道流程控制是程序里最常见的用于控制逻辑的统称。那为什么在Node.js里就变成了异步流程控制了呢? 这和Node.js本身都是异步的有关,如果每个函数都是异步的,性能好了,后遗症就是callback hell(俗称回调地狱),为了解决callbackhell问题,在Node.js用于流程控制的部分称为异步流程控制。 Node.js从一开始就破旧立新,导致它经常被黑的callbackhell问题。但也正是因为的callbackhell,使得Node.js里的异步流程控制发展的特别快,比如thunk实现,promise/a+规范的落地,es6中的generator和为了generator而写的co模块,以及目前最看好的async函数。各种Node.js的辅助模块更是多的数不清,比如async.js这样的好模块非常多。 可是这样说,掌握了Node.js里的异步流程控制,你就掌握了一半以上的Node.js了 ## 本章主要内容 那么,Node.js中的异步流程控制发展的过快,也还是会给诟病,“你太复杂,如何如何。。。” 事实上,这都是不了解不负责的人讲的话,本章视图去繁就简,希望能够让大家了解简单易用,拨云见日的一面。 主要讲3个部分 * Promise * Generator/yield * Async/await 最后根据这些内容,推导出我们要学习的重点,避免霰弹式的学习。