【JS常见设计模式】工厂模式

JS设计模式 专栏收录该内容
8 篇文章 0 订阅

【JS常见设计模式】工厂模式

工厂模式

定义一个用于创建对象的工厂类,所有对象由工厂类创建,但具体的实例化由子类控制

// 产品类
function Product(name) {
    this.name = name
}

// 产品原型
Product.prototype = {
    constructor: Product,
    init: function init() {
        console.log('init')
    },
    getName: function getName() {
        return this.name
    }
}

// 工厂类
function Factory() {
    this.name = '工厂'
}

// 工厂类原型上的创建方法
// + 每次创建返回一个产品实例
Factory.prototype.create = function create(name) {
    return new Product(name)
}

let factory = new Factory(); // 工厂实例
let product1 = factory.create('product1'); // 产品实例
product1.init(); // init
console.log(product1.getName()); // product1
let product2 = factory.create('product2');
product2.init(); // init
console.log(product2.getName()); // product2
  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值