- 工厂方法模式
工厂方法模式
工厂方法模式是一种实现了「工厂」概念的面向对象设计模式。就像其他创建型模式一样,它也是处理在不指定对象具体类型的情况下创建对象的问题。工厂方法模式的实质是「定义一个创建对象的接口,但让实现这个接口的类来决定实例化哪个类。工厂方法让类的实例化推迟到子类中进行。」
var Humanity = (function() {function Man() {this.introduce = function() {return 'I\'m a man.';}}function Woman() {this.introduce = function() {return 'I\'m a woman.';}}var humanity = {male: Man,female: Woman};return function( gender ) {return new humanity[gender]();}})();var man = new Humanity('male');var woman = new Humanity('female');console.log(man.introduce()); // "I'm a man."console.log(woman.introduce()); // "I'm a woman."
