JS 設(shè)計(jì)模式

設(shè)計(jì)模式:某些固定的高效的用來(lái)解決特定需求的被總結(jié)成規(guī)范的寫代碼的形式

單例模式:

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

    return Fn.obj;
}

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

組合模式:
組合對(duì)象,將對(duì)象組合成特定的結(jié)構(gòu)(樹形),DOM的結(jié)構(gòu)也是樹形結(jié)構(gòu),所以,組合模式一般用來(lái)操作html結(jié)構(gòu)
將多個(gè)對(duì)象按照樹形結(jié)構(gòu)組合起來(lái)之后,每個(gè)對(duì)象之間,會(huì)產(chǎn)生關(guān)系,父子級(jí)
當(dāng)操作某個(gè)父對(duì)象時(shí),它所有的子對(duì)象,實(shí)現(xiàn)所謂的批量操作
特點(diǎn):節(jié)省操作,消耗性能

策略模式:
策略:計(jì)劃,方案
提前規(guī)劃有可能會(huì)執(zhí)行的方案,將來(lái)在使用使用的時(shí)候,根據(jù)不同的情況,調(diào)取對(duì)應(yīng)的方案

觀察者模式:
發(fā)布訂閱者模式
發(fā)布者:發(fā)布信息
訂閱者(觀察者,監(jiān)聽者):接收信息

一個(gè)主題對(duì)象:
多個(gè)接收對(duì)象:
形成一個(gè)簡(jiǎn)單的廣播通信
接受者,隨時(shí)加入和離開
耦合比較低,方便查看程序結(jié)構(gòu)

抽象工廠模式:
工廠模式:原料,加工,出廠,批量創(chuàng)建具有相同特點(diǎn)的對(duì)象
抽象:將多個(gè)相同對(duì)象的共同內(nèi)容,抽象出來(lái),形成公共對(duì)象
抽象工廠模式,工作時(shí),再?gòu)倪@個(gè)公共對(duì)象身上繼承出屬性,加入其它屬性,形成真正的實(shí)例

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模型,數(shù)據(jù)
V:view視圖,呈現(xiàn)方式
C:ctrl控制,控制器,中控中心
工作流程:
用戶(瀏覽器)向控制器發(fā)送指令
控制器接收到這個(gè)指令后,根據(jù)指令先去取模型中的數(shù)據(jù)
再去取對(duì)應(yīng)的視圖
將剛才在對(duì)應(yīng)的模型中拿到的數(shù)據(jù),給剛剛?cè)〉降囊晥D
由視圖做最終顯示

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 工廠模式 單體模式 模塊模式 代理模式 職責(zé)鏈模式 命令模式 模板方法模式 策略模式 發(fā)布-訂閱模式 中介者模式 ...
    HelloJames閱讀 1,080評(píng)論 0 6
  • 2018任務(wù)繁重,今年打算把重點(diǎn)放在js的深入上,往大前端方向發(fā)展.年初有空看完了《JavaScript高級(jí)程序設(shè)...
    丶丶夏天閱讀 887評(píng)論 1 2
  • 設(shè)計(jì)模式 單例 單例模式的核心思想是讓指定的類只存在唯一一個(gè)實(shí)例。這意味著當(dāng)你第二次使用相同的類去創(chuàng)建對(duì)象的時(shí)候,...
    代碼上的螞蟻閱讀 540評(píng)論 0 0
  • 單例模式 適用場(chǎng)景:可能會(huì)在場(chǎng)景中使用到對(duì)象,但只有一個(gè)實(shí)例,加載時(shí)并不主動(dòng)創(chuàng)建,需要時(shí)才創(chuàng)建 最常見的單例模式,...
    Obeing閱讀 2,315評(píng)論 1 10
  • KTV里我們兩個(gè)女生,唱著各自喜歡的歌,更像是唱著心曲,流淌出不與人說(shuō)的情緒。 “也許放棄,才能靠近你,不再見你,...
    柒不梔閱讀 2,381評(píng)論 0 5

友情鏈接更多精彩內(nèi)容