JS 设计模式

设计模式:某些固定的高效的用来解决特定需求的被总结成规范的写代码的形式

单例模式:

function Fn(){
    if(!Fn.obj){
        Fn.obj = {};
    }
    Fn.obj.name = "admin";

    return Fn.obj;
}

var f1 = new Fn();
var f2 = new Fn();

组合模式:
组合对象,将对象组合成特定的结构(树形),DOM的结构也是树形结构,所以,组合模式一般用来操作html结构
将多个对象按照树形结构组合起来之后,每个对象之间,会产生关系,父子级
当操作某个父对象时,它所有的子对象,实现所谓的批量操作
特点:节省操作,消耗性能

策略模式:
策略:计划,方案
提前规划有可能会执行的方案,将来在使用使用的时候,根据不同的情况,调取对应的方案

观察者模式:
发布订阅者模式
发布者:发布信息
订阅者(观察者,监听者):接收信息

一个主题对象:
多个接收对象:
形成一个简单的广播通信
接受者,随时加入和离开
耦合比较低,方便查看程序结构

抽象工厂模式:
工厂模式:原料,加工,出厂,批量创建具有相同特点的对象
抽象:将多个相同对象的共同内容,抽象出来,形成公共对象
抽象工厂模式,工作时,再从这个公共对象身上继承出属性,加入其它属性,形成真正的实例

var factory = (function(){
        function car(wheel,engine){
            this.wheel = wheel;
            this.engine = engine;
        }
        return function(wheel, engine){
            return new car(wheel,engine);
        }
    })();
    var 车架子 = factory("轮胎","引擎");

MVC模式:
M:module模型,数据
V:view视图,呈现方式
C:ctrl控制,控制器,中控中心
工作流程:
用户(浏览器)向控制器发送指令
控制器接收到这个指令后,根据指令先去取模型中的数据
再去取对应的视图
将刚才在对应的模型中拿到的数据,给刚刚取到的视图
由视图做最终显示

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 工厂模式 单体模式 模块模式 代理模式 职责链模式 命令模式 模板方法模式 策略模式 发布-订阅模式 中介者模式 ...
    HelloJames阅读 4,619评论 0 6
  • 2018任务繁重,今年打算把重点放在js的深入上,往大前端方向发展.年初有空看完了《JavaScript高级程序设...
    丶丶夏天阅读 4,221评论 1 2
  • 设计模式 单例 单例模式的核心思想是让指定的类只存在唯一一个实例。这意味着当你第二次使用相同的类去创建对象的时候,...
    代码上的蚂蚁阅读 3,424评论 0 0
  • 单例模式 适用场景:可能会在场景中使用到对象,但只有一个实例,加载时并不主动创建,需要时才创建 最常见的单例模式,...
    Obeing阅读 6,554评论 1 10
  • KTV里我们两个女生,唱着各自喜欢的歌,更像是唱着心曲,流淌出不与人说的情绪。 “也许放弃,才能靠近你,不再见你,...
    柒不栀阅读 6,634评论 0 5

友情链接更多精彩内容