js设计模式:工厂模式

作用:

可以通过new关键字,批量的创建对象。

将对象的创建和具体业务逻辑进行分离,代码清晰可维护。

示例:

        function workFactory(workName,name){
            switch(workName){
               case 'jsCoder':
                return new jsCoder(name)
                break
                case 'javaCoder':
                return new javaCoder(name)
                break                
            }
        }
        function jsCoder(name){
            this.workName = 'jsCoder'
            this.language = 'js'
            this.duty = function(){
                console.log('写前端')
            }
            this.workerName = name
        }
        function javaCoder(name){
            this.workName = 'javaCoder'
            this.language = 'java'
            this.duty = function(){
                console.log('写后端')
            }
            this.workerName = name
        }
 
        //批量创建
        const wjt = workFactory('jsCoder','王惊涛')
        const wgq = workFactory('javaCoder','王港奇')
        const ljx = workFactory('jsCoder','李晋旭')
        console.log(wjt,wgq,ljx)

        //实现一个工厂函数,该函数需要传入区别类型的参数
        //例如这里根据workName去判断,从而使用不同的构造函数去构建
        //name可以决定开发者的名字,同样传入到工产函数中

        //使用工厂模式可以进行快捷批量的创建对象,只需要传入正确的参数即可

相关推荐

  1. 设计模式——js/ts 实现简单工厂模式

    2024-02-20 04:12:02       52 阅读
  2. (三)js前端开发中设计模式工厂模式

    2024-02-20 04:12:02       20 阅读
  3. 设计模式工厂模式

    2024-02-20 04:12:02       69 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-20 04:12:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-20 04:12:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-02-20 04:12:02       87 阅读
  4. Python语言-面向对象

    2024-02-20 04:12:02       96 阅读

热门阅读

  1. Python 将一维数组或矩阵变为三维

    2024-02-20 04:12:02       65 阅读
  2. 阿里云香港服务器是cn2吗?怎么测试?

    2024-02-20 04:12:02       55 阅读
  3. C++ lock_guard的使用

    2024-02-20 04:12:02       59 阅读
  4. Uni-App《》

    2024-02-20 04:12:02       51 阅读
  5. MySql5.7之ERROR 1045 (28000)问题处理

    2024-02-20 04:12:02       55 阅读
  6. 1057:简单计算器

    2024-02-20 04:12:02       42 阅读
  7. 微信多开(无需关闭软件)优化

    2024-02-20 04:12:02       57 阅读
  8. 常见的Web前端开发框架推荐

    2024-02-20 04:12:02       48 阅读