title: What is the preferred way of chaining Underscore.js functions?
body: <p>Underscore.js has two ways of calling functions, which I will refer to as object-style and function-style. Object-style looks like the following:</p>
  
  <pre><code>_(myObject).each(function (val, key) {
    console.log(key, val);
  });
  </code></pre>
  
  <p>Function-style, on the other hand, looks like this:</p>
  
  <pre><code>_.each(myObject, function (val, key) {
    console.log(key, val);
  });
  </code></pre>
  
  <p>I was happily using object-style calls in my code, but at some point, however, the object style of call disappeared from the underscore.js documentation (though object-style calls still work perfectly fine). I've also seen hints around the place (like in the backbone.js documentation) that the function-style is 'better' or 'preferred'.</p>
  
  <p>So, is the function-style of call the preferred method? And if so, can someone explain the reasoning behind this?</p>
  
  <p><strong>Update:</strong> @ggozad has partially answered my question. But it seems my understanding of how underscore.js works was formed way back around version 0.4.2. Reading through the change history for underscore.js, you can see this entry for version 1.2.4:</p>
  
  <blockquote>
    <p>You now can (and probably should) write <code>_.chain(list)</code> instead of <code>_(list).chain()</code>.</p>
  </blockquote>
  
  <p>I would like to know why you should write <code>_.chain(list)</code> instead of <code>_(list).chain()</code>.</p>