国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

JavaScript多態與適配器模式思考

來源:懂視網 責編:小采 時間:2020-11-27 20:31:32
文檔

JavaScript多態與適配器模式思考

JavaScript多態與適配器模式思考:不多說先上一段代碼(轉載自《JavaScript設計模式與開發實踐》) //谷歌地圖show方法 var googleMap = { googlShow: function() { console.log("谷歌地圖"); } }; //百度地圖show方法 var baiduMap = { baiduS
推薦度:
導讀JavaScript多態與適配器模式思考:不多說先上一段代碼(轉載自《JavaScript設計模式與開發實踐》) //谷歌地圖show方法 var googleMap = { googlShow: function() { console.log("谷歌地圖"); } }; //百度地圖show方法 var baiduMap = { baiduS

不多說先上一段代碼(轉載自《JavaScript設計模式與開發實踐》)

 //谷歌地圖show方法
 var googleMap = {
 googlShow: function() {
 console.log("谷歌地圖");
 }
 };
 //百度地圖show方法
 var baiduMap = {
 baiduShow: function() {
 console.log("百度地圖");
 }
 };
 //渲染地圖函數
 var renderMap=function(map){
 if(map.show instanceof Function){
 map.show(); 
 }
 };
 renderMap(googleMap);//
輸出:開始渲染谷歌地圖 renderMap(baiduMap);//輸出:開始渲染百度地圖

對于書中拋出的問題,假設每個地圖API提供展示地圖的方法名都是show,在實際開發中也許不會如此順利,書中作者提出的思路是借助適配器模式來解決問題。下面是我仿照適配器模式改進的:

 var googleMap = {
 googlShow: function() {
 console.log("谷歌地圖");
 }
 };
 var baiduMap = {
 baiduShow: function() {
 console.log("百度地圖");
 }
 };
 
 //適配器參數配置
 var mapArg = {
 "googleMap": googleMap.googlShow,
 "baiduMap": baiduMap.baiduShow
 };
 
 //適配器地圖
 var adaptMap = {
 show: function(arg) {
 for (var imap in mapArg) {
 for (var fmap in arg) {
 if (imap && fmap && mapArg[imap].name==fmap) {
 return mapArg[imap]();
 }
 }
 }
 }
 };
 //只關注發出顯示地圖而不關注具體用哪種地圖
 var renderMap = function(arg) {
 adaptMap.show(arg);
 };
 //當增加了搜搜地圖,我們需要添加搜搜地圖的方法以及修改適配器地圖參數
 //而不需要對renderMap函數進行修改
 var sosoMap = {
 sosoShow: function() {
 console.log("搜搜地圖");
 }
 };
 mapArg.sosoMap=sosoMap.sosoShow; 
 render(sosoMap);

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

JavaScript多態與適配器模式思考

JavaScript多態與適配器模式思考:不多說先上一段代碼(轉載自《JavaScript設計模式與開發實踐》) //谷歌地圖show方法 var googleMap = { googlShow: function() { console.log("谷歌地圖"); } }; //百度地圖show方法 var baiduMap = { baiduS
推薦度:
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 久久亚洲一级α片 | 国产成人高清亚洲一区久久 | 国产精品久久久久久一级毛片 | 久久99精品久久久久久水蜜桃 | 久久精品国产亚洲a不卡 | 欧美日韩在线一区 | 久久精品国产一区二区三区日韩 | 99热成人精品国产免国语的 | 国产午夜精品视频 | 精品一区二区三区亚洲 | 美国一级大黄大色毛片 | 亚洲婷婷在线视频 | 毛片视频网站 | 欧美日韩视频在线 | 可以免费观看一级毛片黄a 另类区 | 日韩无 | 欧美在线aa | 美女一级毛片免费观看 | 曰韩在线 | 亚洲精品影院久久久久久 | 哪里有毛片 | 国产色在线视频 | 亚洲国产精品日韩在线 | 国产在线一区二区三区欧美 | 另类亚洲色图 | 国产精品第5页 | xxx色xxx性 | 美女视频黄a视频全免费应用 | 国产视频高清 | 久久久影院亚洲精品 | 一区二区三区免费电影 | 久久无码精品一区二区三区 | a一级毛片免费播放 | 国产精品视频免费 | 亚洲色图另类 | 亚洲素人在线 | 国产麻豆流白浆在线观看 | 韩国精品一区二区 | 日韩免费视频网站 | 91精品国产免费久久久久久 | 国产精品ⅴ视频免费观看 |