the animal factory

by Joseph Tate

JavaScript

// http://javascript.info/tutorial/factory-constructor-pattern

function animal(name) {
    return {
        run: function () {
            alert(name + ' is running');
        }
    };
}

animal.prototype.furColor = function(color) {
    this.color = color;
    return {
        theColor: function(){
            alert(this.color);
        }
    }
};

function aRabbit(name) {
    var rabbit = animal(name);
    return rabbit;
}

aRabbit('fred').run();
aRabbit('george').run().furColor('brown');