title: jQuery object `toString()` method
body: <p>I extended the jQuery object to return it's inner HTML...</p>
  
  <pre><code>$.fn.toString = function() {
    return this.html();
  };
  
  console.log("The inner HTML is: " + $("&lt;div&gt;Here, &lt;i&gt;there&lt;/i&gt;, everywhere&lt;/div&gt;"));
  </code></pre>
  
  <p>Is there any reason why this is not the default behaviour? Does this break something?</p>
  
  <hr>
  
  <h2>Updated to respond to answers/comments</h2>
  
  <p>Firstly, I don't see how it would break much, except for type checks which rely on coercing jQuery objects into string, and matching text in that string. Am I wrong about this?</p>
  
  <p>This returns the <code>outerHTML</code> of all elements in a set, concatenated. Does this make any sense to anyone else? To me it makes quite a bit of sense.</p>
  
  <pre><code>var li, list;
  
  $.fn.toString = function() {
    var out;
    out = [];
    $.each(this, function(k, v) {
      return out.push($(v)[0].outerHTML);
    });
    return out.join("\n");
  };
  
  list = $("&lt;ul&gt;\n  &lt;li&gt;some &lt;a href='/'&gt;link&lt;/a&gt; items&lt;/li&gt;\n  &lt;li&gt;some &lt;a href='/'&gt;link&lt;/a&gt; items&lt;/li&gt;\n  &lt;li&gt;some &lt;a href='/'&gt;link&lt;/a&gt; items&lt;/li&gt;\n  &lt;li&gt;some &lt;a href='/'&gt;link&lt;/a&gt; items&lt;/li&gt;\n  &lt;li&gt;some &lt;a href='/'&gt;link&lt;/a&gt; items&lt;/li&gt;\n&lt;/ul&gt;");
  
  li = $("li", list);
  
  console.log("The html of it..: " + li);
  </code></pre>