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

javascript 中模板方法單例的實(shí)現(xiàn)方法

 更新時(shí)間:2017年10月17日 09:25:16   作者:res_min  
這篇文章主要介紹了javascript 中模板方法單例的實(shí)現(xiàn)方法的相關(guān)資料,希望通過(guò)本文能幫助到大家,需要的朋友可以參考下

javascript 中模板方法單例的實(shí)現(xiàn)方法

模板方法單例

模板方法的定義:父類中定義一組操作算法骨架,將一些實(shí)現(xiàn)步驟延伸到子類中,使得子類可以不改變父類的算法結(jié)構(gòu)的同時(shí)可重新定義算法中某些實(shí)現(xiàn)步驟。

代碼塊

html部分,例如:

<div id="content"></div>

js部分,例如:

  //格式化字符串方法
  function fromateString(str, data) {
   return str.replace(/\{#(\w+)#\}/g, function(match, key){
    return typeof data[key] === undefined ? '' : data[key]
   });
  }
  //基礎(chǔ)導(dǎo)航
  var Nav = function (data) {
   //基礎(chǔ)導(dǎo)航樣式模板
   this.item = '<a href="{#href#}" rel="external nofollow" title="{#title#}">{#name#}</a>';
   //創(chuàng)建字符串
   this.html='';
   for (var i = 0; i < data.length; i++) {
    this.html += fromateString(this.item, data[i]);
   }
   return this.html;
  }
  //帶有信息提示信息導(dǎo)航
  var NumNav = function (data) {
   //消息提醒小心組件模板
   var tpl = '<p>{#num#}</p>';
   for (var i = data.length -1; i >= 0; i--) {
    data[i].name += data[i].name + fromateString(tpl, data[i]);
   }
   return Nav.call(this, data);
  }
  //帶有鏈接地址的導(dǎo)航
  var LinkNav = function (data) {
   //消息提醒小心組件模板
   var tpl = '<span>{#link#}</span>';
   for (var i = data.length -1; i >= 0; i--) {
    data[i].name += data[i].name + fromateString(tpl, data[i]);
   }
   return Nav.call(this, data);
  }

  //測(cè)試帶有信息提示的導(dǎo)航
  var nav = document.getElementById('content');
  nav.innerHTML = NumNav([
   {
    href : 'www.baidu.com',
    title : '百度一下你就知道',
    name : '百度',    
    num : 10,
    link : 'www.baidu.com'
   },
   {
    href : 'www.taobao.com',
    title : '淘寶商城',
    name : '淘寶',    
    num : 2,
    link : 'www.taobao.com'
   },
   {
    href : 'www.qq.com',
    title : '騰訊首頁(yè)',
    name : '騰訊',    
    num : 3,
    link : 'www.qq.com'
   }
  ]);

其實(shí)模板方法模式不僅僅在我們歸一化組件的時(shí)候使用 有時(shí)候創(chuàng)建頁(yè)面時(shí)也是很常用到的。通過(guò)上述代碼可以衍生出的靜態(tài)頁(yè)面的封裝以及業(yè)務(wù)邏輯的交互封裝。

如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • JS表單傳值和URL編碼轉(zhuǎn)換

    JS表單傳值和URL編碼轉(zhuǎn)換

    本篇文章給大家詳細(xì)分享了JS表單傳值和URL編碼轉(zhuǎn)換的相關(guān)知識(shí)點(diǎn),并把實(shí)例做了分享,一起學(xué)習(xí)下。
    2018-03-03
  • 小程序tab實(shí)現(xiàn)頁(yè)面切換

    小程序tab實(shí)現(xiàn)頁(yè)面切換

    這篇文章主要為大家詳細(xì)介紹了小程序tab實(shí)現(xiàn)頁(yè)面切換,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • JavaScript獲取css行間樣式,內(nèi)連樣式和外鏈樣式的簡(jiǎn)單方法

    JavaScript獲取css行間樣式,內(nèi)連樣式和外鏈樣式的簡(jiǎn)單方法

    下面小編就為大家?guī)?lái)一篇JavaScript獲取css行間樣式,內(nèi)連樣式和外鏈樣式的簡(jiǎn)單方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-07-07
  • JavaScript 解析讀取XML文檔 實(shí)例代碼

    JavaScript 解析讀取XML文檔 實(shí)例代碼

    應(yīng)項(xiàng)目之需求,需用JS操作XML文檔,遂上網(wǎng)查資料,感覺(jué)這篇文章還不錯(cuò),特轉(zhuǎn)載到此地,與大家共享!
    2009-07-07
  • 一文詳解如何清除手機(jī)上小程序緩存

    一文詳解如何清除手機(jī)上小程序緩存

    大家在使用微信小程序的時(shí)候會(huì)有緩存,雖然小程序的緩存數(shù)值相比APP要少的多,下面這篇文章主要給大家介紹了關(guān)于如何清除手機(jī)上小程序緩存的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • JavaScript判斷是否為數(shù)字的幾種方式匯總(推薦!)

    JavaScript判斷是否為數(shù)字的幾種方式匯總(推薦!)

    有時(shí)候需要根據(jù)輸入的內(nèi)容來(lái)進(jìn)行計(jì)算,這個(gè)時(shí)候就需要判斷輸入的內(nèi)容是否是數(shù)字,下面這篇文章主要給大家介紹了關(guān)于JavaScript判斷是否為數(shù)字的幾種方式,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • JavaScript數(shù)據(jù)結(jié)構(gòu)中棧的應(yīng)用之表達(dá)式求值問(wèn)題詳解

    JavaScript數(shù)據(jù)結(jié)構(gòu)中棧的應(yīng)用之表達(dá)式求值問(wèn)題詳解

    這篇文章主要介紹了JavaScript數(shù)據(jù)結(jié)構(gòu)中棧的應(yīng)用之表達(dá)式求值問(wèn)題,詳細(xì)分析了中綴表達(dá)式、后綴表達(dá)式等概念、原理與轉(zhuǎn)換方法,以及基于后綴表達(dá)式實(shí)現(xiàn)的表達(dá)式求值相關(guān)操作技巧,需要的朋友可以參考下
    2017-04-04
  • 前端實(shí)現(xiàn)視頻文件動(dòng)畫幀圖片提取完整教程

    前端實(shí)現(xiàn)視頻文件動(dòng)畫幀圖片提取完整教程

    相信很多小伙伴在一些短視頻平臺(tái)上傳視頻的時(shí)候,系統(tǒng)會(huì)自動(dòng)幫我們生成一些視頻中的畫面幀的圖片,讓我們作為視頻封面的功能,那么這些短視頻平臺(tái)是如何從視頻中抽取關(guān)鍵幀來(lái)作為封面,今天博主就帶著大家一起來(lái)探討這個(gè)問(wèn)題,感興趣的小伙伴跟著小編一起來(lái)看看吧
    2025-04-04
  • javascript 解決瀏覽器不支持的問(wèn)題

    javascript 解決瀏覽器不支持的問(wèn)題

    這篇文章主要介紹了javascript 解決瀏覽器不支持的問(wèn)題的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • ES6中非常實(shí)用的新特性介紹

    ES6中非常實(shí)用的新特性介紹

    ECMAScript 6離我們?cè)絹?lái)越近了,作為它最重要的方言,Javascript也即將迎來(lái)語(yǔ)法上的重大變革,InfoQ特開設(shè)“深入淺出ES6”專欄,來(lái)看一下ES6將給我們帶來(lái)哪些新內(nèi)容
    2016-03-03

最新評(píng)論

鄂州市| 宿州市| 巴林右旗| 临潭县| 翁牛特旗| 永顺县| 福鼎市| 吉安县| 宜兰县| 通化市| 都昌县| 涞源县| 海口市| 龙门县| 蒲江县| 桂林市| 遂川县| 丽水市| 门头沟区| 陕西省| 长白| 宿州市| 咸宁市| 衡东县| 尉氏县| 承德县| 香格里拉县| 澄迈县| 双鸭山市| 呼图壁县| 东莞市| 延边| 广昌县| 威远县| 和硕县| 诏安县| 南江县| 土默特右旗| 昌宁县| 昭通市| 贞丰县|