Here's the code for doing this
function Person() {
this.klass = 'human';
}
Person.prototype.toString = function () {
return this.klass;
};
Person.prototype.greeting = function () {
return 'hello everyone Im ' + this.name + ', my job is ' + this.klass + '。';
};
function Programmer(name) {
this.name = name;
this.klass = 'coder';
}
Programmer.prototype = new Person();
Programmer.prototype.constructor = Programmer;
var someone = new Programmer('sam');
someone.name; // sam
someone.toString(); // coder
someone.greeting(); // hello everyone Im sam my job is coder
I saw this code snippet from a online tutorial, but I wonder whats the purpose for this assignment:
Programmer.prototype.constructor = Programmer;
Ive tried delete this assignment, and everything works fine.