Inheritance
- An inheritance example
var Animal = function (name) { this.name = name; } // this.prototype = { constructor: this }
Animal.prototype.get_name = function () { return this.name; }
var myAnimal = new Animal (‘pretty’);
myAnimal.get_name (); // ‘pretty’
var Cat = function (name) { this.name = name; }
Cat.prototype = new Animal ();
var myCat = new Cat (‘pretty’);
myCat.get_name(); // ‘pretty’
Animal.prototype.get_type = function() { return ‘Animal’; }
myCat.get_type() // ‘Animal’
- A better way
Object.beget = function (o) {
var F = function() {};
F.prototype = o;
return new F();
}
var animal = {
name: ‘animal’,
get_name: function() { return this.name; }
}
var cat = Object.beget (animal);
cat.get_name() // ‘animal’