title: What is the difference between _.extend(Something.prototype, someObj) and Something.prototype.someFunc = someFunc?
body: <p>I'm getting into actual object oriented programming using JavaScript and i've run into two different ways of extending the prototype of an existing object.</p>
  
  <p>Method one:</p>
  
  <pre><code>Something.prototype.someFunc = function() {
      // To something usefull
  }
  </code></pre>
  
  <p>Method two (using underscore.js):</p>
  
  <pre><code>_.extend(Something.prototype, {
      someFunc: function() {
          // Do the same but differently
      }
  }
  </code></pre>
  
  <p>What is the difference between these two approaches? Which one is considered "better"? To me it looks like the first method is better because it uses plain old javascript, and the second method is someone elses implementation. But on the other hand, the underscore.js developers surely didn't add the _.extend() method for nothing?</p>