How to Prevent
Callback Hell
Tianyu ZHAO
Self-Introduction
From China
Joined Drecom 1 year ago
Rails Developer
What is callback hell?
Why should we deal with it?
Hard to Understand
How to avoid this?
Name your functions
Define new functions
Use Promise object
Use Promise object
Create custom getJSON function
Use Promise object
Use custom getJSON function
Use Promise object
Don’t have to do that at all (Deferred Object in jQuery 1.8+)
http://api.jquery.com/category/deferred-object/
Use Promise + Generator
What’s Generator?
Use Promise + Generator
More about Promise
Use Promise + Generator
More about Promise
Use Promise + Generator
Cool Library: co (https://github.com/tj/co)
yield Promise
Use Promise + Generator
Cool Library: co (https://github.com/tj/co)
Promise
resolver
resolver
Generator
.next()
Promise
resolver
Conclusion
Callback hell is kind of the feature of JavaScript
Some people like it, some people don’t like it
Decide how to handle it by oneself (simply name functions
or use Promise + Generator)
Thank you!

How to Prevent Callback Hell