刚入门自学node.js 时候,经常能看到所谓的"回调地狱",当时不理解,为什么要嵌套回调,后来写写代码明白了,是因为node.js 大部分api是异步函数,就是异步回调不确定哪个先回来,同步写代码无法控制流程.但是我们写逻辑代码时,肯定有先后顺序,比如根据上一次回调的值,来判断下一次调用什么样的函数,有人这样说掌握了node.js的异步流程控制,就学了node.js 50%,虽然有点夸大其辞,可见异步流程对于我们同步的大脑是有点不习惯,随着node.js的发展,node.js的异步流程控制也经过了几个时代,变得越来越好用了。
- 石器时代 回调函数
- 青铜时代 promise
- 农业时代 Promise + Generator
- 工业时代 async await
- 信息时代 未来也许有更好的