麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > JavaScript > 正文

javascript 模式設計之工廠模式詳細說明

2024-05-06 14:10:09
字體:
來源:轉載
供稿:網友
模式類型:工廠模式
模式說明:常用模式之一,用來動態創建對象
適用范圍:在運行期間需要在一系列可互換的子類中進行選擇的類
注意事項:接口的實現,從而使不同子類可以被同等的對待,恰當的使用工廠模式,但不要拘泥與形式,理解本質。
關鍵點:以 函數/類/子類 構建的選擇器
本質:函數作為選擇器的使用
一般使用形式:
作為獨立的選擇器存在:
代碼如下:
function FactoryMode(index){
switch(index){
case "index1" :
return new Class1();break;
case "index2":
return new Class2();break;
case "index3":
return new Class3();break;
default:return new ClassComm();break;
}
}

或作為類的一個方法存在:
代碼如下:
var MainClass=function(){};//主類構造器
MainClass.prototype={
FactoryMode:function(){}//子類選擇器
}

又或隱式選擇,即不以使用者的主觀選擇而選擇:

代碼如下:
var xmlRequest=function(){
if(this.isOffOnline()){
xhr= new OfflineHandler();
}//如果此時網絡不可用,創建可緩存AJAX對象
else if(this.isHightLatency()){
xhr= new QueuedHandler();
}//如果網絡延遲較大,創建隊列形式AJAX對象
else {
xhr=new SimpleHandler();
}//如果網絡正常,創建簡單AJAX對象
interface.ensureImplements(xhr,AjaxHandler);
//檢查對象是否實現了接口,從而確保以后的工作可以順利進行
return xhr;
}

延伸:

工廠模式的本質就是選擇器的應用,選擇器不僅可作為對象的選擇,還可作為函數的選擇,類的選擇,參數的選擇
函數的選擇,如:
代碼如下:
var addEvent=(function(){
if(!-[0,]){
return function(elem,type,handler){
elem[type+handler.toString()]=handler;
elem.attachEvent("on"+type,elem[type+handler.toString]);
}}//if IE
else {
return function(elem,type,handler){
elem.addEventListener(type,handler,false);
}
}
})();//避免多次判斷

類的選擇:

代碼如下:
var suitableClass=function(){
if(match condition A) return Class1;
else if(match condition B) return Class2;
else return ClassComm;
}

參數的選擇:

代碼如下:
function Country(country){
if(country=="China")
this.config={};//設置基本參數1
else if(contry=="America")
this.config={};//設置參數2
else if()
.......//等等
}
Country.prototype={};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 91短视频在线观看视频 | 久草成人在线观看 | 久久久久久久一区二区三区 | 国产日产精品一区二区三区四区 | 国产91精品久久久久久 | 久久国产精品网 | 成人在线不卡 | 成人毛片在线免费看 | 色视频欧美 | 亚洲一区二区三区视频免费 | 久久久tv| 神马顶级推理片免费看 | 男女污污视频网站 | 99精品视频一区二区三区 | 九色com | 在线观看视频日本 | 欧美1区2区在线观看 | 成人在线视频播放 | 欧美成年人在线视频 | 亚洲精品tv久久久久久久久久 | 日产精品久久久一区二区福利 | 特黄一区二区三区 | 羞羞草视频 | 成人午夜a | 久久久久久久久久久久久九 | 91一区二区三区久久久久国产乱 | 欧美精品久久天天躁 | 黄色片快播 | 日本精品视频一区二区三区四区 | 免费欧美一级视频 | 亚洲人成网站免费播放 | 全黄性性激高免费视频 | 国产黄色一区二区 | 在线观看国产一区二区三区 | 看a级毛片 | 免费视频一区 | 午夜精品成人 | 日韩视频―中文字幕 | 九九热在线精品视频 | 欧美日韩在线视频观看 | 欧美一级黄色免费 |