,

The Factory Pattern

var Car = (function() {
   var Car = function (model, year, miles){
       this.model = model;
       this.year   = year;
       this.miles = miles;
   };
   return function (model, year, miles) {
       return new Car(model, year, miles);
   };
})();

var civic = new Car("Honda Civic", 2009, 20000);
var mondeo = new Car("Ford Mondeo", 2010, 5000);

多くの場合は使わない方が良い。使ってよい場合は以下の通り
オブジェクトの初期化が複雑な場合
環境によって異なるインスタンスを生成する場合
同じ属性をもつ多数のインスタンスを生成する場合