HTML and CSS Reference
In-Depth Information
Chaining Underscore Method Calls
Because Underscore does such nice things on collections, it would be nice if the syntax for dealing with multiple
calls to Underscore methods in a row were cleaner.
Following is an example of the problem. If you want to pull out the maximum y value of all the sprites of the
enemy category, you could write
.filter(function(s) { return s.category == "enemy"; }))
If you can follow all those nested _(..) calls, good luck; it's not something that is particularly readable.
For just this reason, Underscore provides a mechanism called chaining .
.filter(function(s) { return s.category == "enemy"; })
When you want to chain a number of underscore functions in a row, call _.chain() , and then when you
are done, call .value() .
Two useful JavaScript libraries—jQuery and Underscore—can help you write more compact code, devoid of
per-browser checks and boilerplate code, that is easier to understand and maintain.
Although not using a library is certainly an option ( Alien Invasion , after all, was built without libraries), the
cost of adding both jQuery and Underscore is less than 40 kb, or approximately the size of a small JPG. Take
advantage of the hard work that people have put in before you to make cross-browser development easier.
Search WWH ::

Custom Search