title: Using "Object.create" instead of "new"
body: <p>Javascript 1.9.3 / ECMAScript 5 introduces <code>Object.create</code>, which Douglas Crockford amongst others has been <a href="http://javascript.crockford.com/prototypal.html" rel="noreferrer">advocating</a> for a long time. How do I replace <code>new</code> in the code below with <code>Object.create</code>?</p>
  
  <pre><code>var UserA = function(nameParam) {
      this.id = MY_GLOBAL.nextId();
      this.name = nameParam;
  }
  UserA.prototype.sayHello = function() {
      console.log('Hello '+ this.name);
  }
  var bob = new UserA('bob');
  bob.sayHello();
  </code></pre>
  
  <p>(Assume <code>MY_GLOBAL.nextId</code> exists).</p>
  
  <p>The best I can come up with is:</p>
  
  <pre><code>var userB = {
      init: function(nameParam) {
          this.id = MY_GLOBAL.nextId();
          this.name = nameParam;
      },
      sayHello: function() {
          console.log('Hello '+ this.name);
      }
  };
  var bob = Object.create(userB);
  bob.init('Bob');
  bob.sayHello();
  </code></pre>
  
  <p>There doesn't seem to be any advantage, so I think I'm not getting it. I'm probably being too neo-classical. How should I use <code>Object.create</code> to create user 'bob'?</p>