title: Assigning an object prototype after creation
body: <p>All examples and questions I've came upon searching on the web about prototypal inheritance shows the assigning of prototypes to <strong>constructor functions</strong> and before it's called, much like the following code:</p>
  
  <pre><code>Object.beget = function (o) {
      var F = function () {};
      F.prototype = o;
      return new F();
  };
  </code></pre>
  
  <p>My question is, is there a way to change an <strong>object</strong> (<strong>not a constructor function</strong>) prototype after it has been instatiated in such a way that I can access the new prototype methods without calling it directly, or in other words, in such a way where the <strong>object</strong> inherits its <strong>new prototype methods</strong>? </p>
  
  <p><em>EDIT:</em> </p>
  
  <p>I guess the focus of the question might not be clear, I am not interested in enhancing an object's prototype, what I really want is a way to assign a new prototype, without altering other objects which had the same prototype as the first.</p>