Dynamic Prototype Pattern

JavaScript object creation patterns - dynamic prototype pattern

by Muhammad Ikhsan

JavaScript

var peopleDynamicProto = function(name, age, state) {
  this.name = name;
  this.age = age;
  this.state = state;
  
  if (typeof this.printPerson !== 'function') {
    peopleDynamicProto.prototype.printPerson = function() {
      console.log(this.name + ', ' + this.age + ', ' + this.state);
    };
  }
};

var person = new peopleDynamicProto("name1", 21, "ID");
person.printPerson();