国产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
主站蜘蛛池模板: 唯美清纯另类亚洲 | 国产日产欧美一区二区三区 | 国产91在线 | 中文 | 国产精品第1页 | 亚洲国产精品日韩一线满 | 一级成人a毛片免费播放 | 亚洲精品综合久久中文字幕 | 2022国产91精品久久久久久 | 女同互忝互慰dv毛片观看 | 日韩专区欧美 | 国内在线观看精品免费视频 | 亚洲日韩视频 | 亚洲欧美一区二区三区久本道 | 中文国产成人精品久久一区 | 久久亚洲私人国产精品 | 欧美激情爱爱 | 国产原创一区二区 | 欧美日韩亚洲第一页 | 韩国视频网站 | 日产精品一区二区三区免费 | 国产日韩欧美视频 | 日本a中文字幕 | 欧美视频精品一区二区三区 | 欧美亚洲国产精品第一页 | 日韩欧美中字 | 国产日韩一区二区三区 | 国产精品久久久久久一区二区 | 欧美日韩精品乱国产538 | 国产一区二区三区免费在线观看 | 日韩午夜电影 | 国产91精品黄网在线观看 | 欧美在线观看日韩欧美在线观看 | 中文字幕免费观看 | 欧美日韩午夜 | 91麻精品国产91久久久久 | 欧美国产第一页 | 久久一级毛片 | 日本不卡视频一区二区三区 | www.com黄色| 一级毛片免费毛片毛片 | 国产成人欧美一区二区三区的 |