最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript設(shè)計模式經(jīng)典之工廠模式

 更新時間:2016年02月24日 14:12:05   投稿:mrr  
工廠模式定義一個用于創(chuàng)建對象的接口,這個接口由子類決定實例化哪一個類。接下來通過本文給大家介紹JavaScript設(shè)計模式經(jīng)典之工廠模式,感興趣的朋友一起學(xué)習(xí)吧

一、工廠模式概念

工廠模式定義一個用于創(chuàng)建對象的接口,這個接口由子類決定實例化哪一個類。該模式使一個類的實例化延遲到了子類。而子類可以重寫接口方法以便創(chuàng)建的時候指定自己的對象類型(抽象工廠)。

這個模式十分有用,尤其是創(chuàng)建對象的流程賦值的時候,比如依賴于很多設(shè)置文件等。并且,你會經(jīng)常在程序里看到工廠方法,用于讓子類定義需要創(chuàng)建的對象類型。

二、工廠模式的作用和注意事項

模式作用:

1、對象構(gòu)建十分復(fù)雜--我們穿鞋很簡單,但是制作鞋子的過程十分復(fù)雜

2、需要依賴具體的環(huán)境創(chuàng)建不同的實例--工廠可以做鞋子,做衣服,工廠可以做我需要的鞋子(鞋子不同),然后送到指定的地方(地方可以不同),可以理解為不同的實例

3、處理大量具有相同屬性的小對象--比如買一雙鞋,沒必要找工廠生產(chǎn)

注意事項:

1、不能濫用工廠,有時候僅僅是給代碼增加復(fù)雜度--如上3

三、工廠模式代碼和實戰(zhàn)總結(jié)

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
//1.工廠應(yīng)該有廠長來決定運行到底哪條產(chǎn)品線
//2.消費者-》子類
var gongchang = {};
gongchang.chanyifu = function(){
this.gongren = 50;
alert("我們有"+this.gongren);
}
gongchang.chanxie = function(){
this.gongren = 100;
alert("產(chǎn)鞋子");
}
gongchang.yunshu = function(){
this.gongren = 10;
alert("運輸");
}
gongchang.changzhang = function(para){
return new gongchang[para]();
}
var me = gongchang.changzhang("chanxie");
alert(me.gongren);
</script>
</body>
</html>

以上所述是小編給大家介紹的JavaScript設(shè)計模式經(jīng)典之工廠模式,希望對大家有所幫助!

相關(guān)文章

  • 分析javascript原型及原型鏈

    分析javascript原型及原型鏈

    本篇文章給大家詳細分析了javascript原型及原型鏈的相關(guān)知識點以及用法分享,有興趣的朋友參考下。
    2018-03-03
  • CSS圖片響應(yīng)式 垂直水平居中

    CSS圖片響應(yīng)式 垂直水平居中

    這篇文章主要為大家介紹CSS圖片響應(yīng)式 垂直水平居中,在最近的項目中經(jīng)常遇到這樣的需求,于是把相關(guān)內(nèi)容整理一下,分享給大家,需要的朋友可以來參考下
    2015-08-08
  • ECMAScript6中Map映射的基本概念與常用方法

    ECMAScript6中Map映射的基本概念與常用方法

    Map是ES6中新增的數(shù)據(jù)結(jié)構(gòu),Map類似于對象,但普通對象的 key 必須是字符串或者數(shù)字,而 Map 的 key 可以是任何數(shù)據(jù)類型,這篇文章主要給大家介紹了關(guān)于ECMAScript6中Map映射的基本概念與常用方法,需要的朋友可以參考下
    2021-07-07
  • JS清空上傳控件input(type="file")的值的代碼

    JS清空上傳控件input(type="file")的值的代碼

    最近做的一個小功能,需要清空<input type="file">的值,但上傳控件<input type="file">的值不能通過JavaScript來修改。
    2008-11-11
  • 一個報數(shù)游戲js版(約瑟夫環(huán)問題)

    一個報數(shù)游戲js版(約瑟夫環(huán)問題)

    隨便給一個數(shù) 比如100,那么從1到100圍成一個圓圈,然后就類似123123報數(shù)一樣逢3就舍掉,一直這樣輪詢 那么最后剩下來的那個數(shù)是多少?
    2010-08-08
  • 微信小程序接入騰訊云驗證碼的方法步驟

    微信小程序接入騰訊云驗證碼的方法步驟

    這篇文章主要介紹了微信小程序接入騰訊云驗證碼的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • 圖片自動縮小的js代碼,用以防止圖片撐破頁面

    圖片自動縮小的js代碼,用以防止圖片撐破頁面

    圖片自動縮小的js代碼,用以防止圖片撐破頁面...
    2007-03-03
  • JavaScript禁止用戶多次提交的兩種方法

    JavaScript禁止用戶多次提交的兩種方法

    這篇文章主要介紹了JavaScript禁止用戶多次提交的兩種方法的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-07-07
  • javascript對下拉列表框(select)的操作實例講解

    javascript對下拉列表框(select)的操作實例講解

    這篇文章主要介紹了javascript對下拉列表框(select)的操作。需要的朋友可以過來參考下,希望對大家有所幫助
    2013-11-11
  • 微信小程序保存多張圖片的實現(xiàn)方法

    微信小程序保存多張圖片的實現(xiàn)方法

    這篇文章主要介紹了微信小程序保存多張圖片的實現(xiàn)方法,使用promise 隊列,保存多張圖片到手機相冊,小編覺得具有一定的參考價值,有興趣的可以了解一下
    2019-03-03

最新評論

武定县| 新昌县| 银川市| 隆子县| 株洲市| 右玉县| 左贡县| 景德镇市| 嘉祥县| 精河县| 慈利县| 崇阳县| 稻城县| 岳普湖县| 清流县| 诸暨市| 车致| 和平区| 手游| 盐边县| 牙克石市| 诸暨市| 时尚| 尚义县| 涿州市| 扶风县| 麻江县| 武夷山市| 大埔区| 如东县| 资中县| 财经| 建平县| 阿巴嘎旗| 宣威市| 林芝县| 体育| 涡阳县| 祁东县| 汉中市| 花莲市|