使用 Generator 解决回调地狱
In 未分类 on 2015年04月23日 by view: 11,471
10

callback hell

(图片来源于互联网)

回调地狱

相信每一个 JS 程序员都曾被或者正在被回调地狱所折磨,特别是写过 Nodejs 代码的程序员。

 

JS 的后续传递风格(回调)是这门语言的优点也是这门语言的缺点,优点之一是我们可以很轻易的写出异步执行的代码,而缺点也是由异步引起的,当太多的异步步骤需要一步一步执行,或者一个函数里有太多的异步操作,这时候就会产生大量嵌套的回调,使代码嵌套太深而难以阅读和维护,即所谓的回调地狱。

解决方案

随着 JS 这门语言的发展,出现了很多处理回调地狱的解决方案。

具名函数

如最基本的,使用具名函数并保持代码层级不要太深

Promise

进阶一级的使用 Promise 或者链式 Promise,但是还是需要不少的回调,虽然没有了嵌套