Alex
Alex

Reputation: 1583

What am I doing wrong with this prototype setup?

See the simplified code. What am I not getting with this pattern?

    var john = new person('john');
    john.hi();

    function person(name) {
      this.name = name;
    }

    person.prototype.hi = function() {
      console.log('hi there. Name is ' + this.name);
    };

Upvotes: 0

Views: 95

Answers (2)

grape_mao
grape_mao

Reputation: 1153

You could also add prototype function after the creation of your object, and this function can be called by all the instances, even those created before. Because when you call a function, the prototype chain will be searched if no function is found on your object itself.

Upvotes: 0

mikekavouras
mikekavouras

Reputation: 220

If there's anything wrong it is the order of things. Other than that this seems correct.

function person(name) {
  this.name = name;
}

person.prototype.hi = function() {
  console.log('hi there. Name is ' + this.name);
};

var john = new person('john');
john.hi();

Upvotes: 3

Related Questions