Javascript - Inheritance

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’