摘要:概要摘錄的的模板的部分代碼,整理一下解析模板的思路。重點(diǎn)在正則的用法的掌握。
概要:摘錄的jquery的模板的部分代碼,整理一下解析模板的思路。重點(diǎn)在正則的用法的掌握。
分析代碼內(nèi)容解析后代碼:
Name:""
(function anonymous(obj) { var p = [] , print = function() { p.push.apply(p, arguments); }; with (obj) { p.push("解析部分
"); for (i = 0; i < users.length; ++i) { p.push(" Name:"", users[i].name, " "
"); } p.push(" "); } return p.join(""); } )
//匹配部分 str.replace(/[ ]/g, " ") // 將回車(chē),換行,制表符 替換成空格,將代碼拍平 .split("<--").join(" ") //將替換部分的開(kāi)始符替換成 ,不要糾結(jié),下面會(huì)解釋為什么這么做 .replace(new RegExp("((^|-->)[^ ]*)"", "g"), "$1 ") //不以 開(kāi)頭的字符(可以沒(méi)有)+"或者--> + 以外的字符(可以沒(méi)有)+" ,如果滿(mǎn)足條件,$1 里的$1為前面()的部分,相當(dāng)于將"替換為 .replace(new RegExp(" =(.*?)-->", "g"), "",$1,"") // 為前面的<--,匹配下面模板中的 ,替換內(nèi)容",$1," 即()內(nèi)匹配到的users[i].name 加上前綴",和后綴," .split(" ").join("");") //不符合上面規(guī)則的 即<--替換為"); .split("-->").join("p.push("") //不符合上面規(guī)則的-->替換為p.push("); .split(" ").join("""); //第三行將"替換為",此處再替換回" //模板部分
//<-- 變?yōu)榱?); --> 變?yōu)閜.push(" Name:"" //此處的"變?yōu)榱? 被規(guī)則匹配為",users[i].name,"的單詞分隔符
//<-- 變?yōu)榱?); --> 變?yōu)閜.push("
所以有兩種用法,一種是承前啟后 <-- 變?yōu)榱?); --> 變?yōu)閜.push("一種是分隔字符 ",$1,"
文例子出處:JavaScript Micro-Templating
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/99758.html
摘要:看起來(lái)沒(méi)有集合框架,線(xiàn)程,等那么耀眼,但它可是很多框架的基礎(chǔ)啊回復(fù)反射查看相關(guān)文章,先把基礎(chǔ)學(xué)會(huì),后面的得用到它。 回頭看看, 我進(jìn)入Java 領(lǐng)域已經(jīng)快15個(gè)年頭了, 雖然學(xué)的也一般, 但是分享下我的心得,估計(jì)也能幫大家少走點(diǎn)彎路。[入門(mén)]我在2001年之前是C/C++陣營(yíng), 有C和面向?qū)ο蟮幕A(chǔ), 后來(lái)轉(zhuǎn)到Java ,發(fā)現(xiàn)沒(méi)有指針的Java真是好簡(jiǎn)單, 另外Java 的類(lèi)庫(kù)好用的讓...
摘要:柵格系統(tǒng)用于處理頁(yè)面多終端適配的問(wèn)題。它表示抓取對(duì)象以后拖放到另一個(gè)位置。目前,它是標(biāo)準(zhǔn)的一部分。精簡(jiǎn)高效的命名準(zhǔn)則方法這篇文章發(fā)布于年月日,星期日,,歸類(lèi)于相關(guān)。但是不會(huì)受到包含塊的限制,可能會(huì)溢出。 一勞永逸的搞定 flex 布局 尋根溯源話(huà)布局 一切都始于這樣一個(gè)問(wèn)題:怎樣通過(guò) CSS 簡(jiǎn)單而優(yōu)雅的實(shí)現(xiàn)水平、垂直同時(shí)居中。記得剛開(kāi)始學(xué)習(xí) CSS 的時(shí)候,看到 float 屬性不由...
摘要:前言月份開(kāi)始出沒(méi)社區(qū),現(xiàn)在差不多月了,按照工作的說(shuō)法,就是差不多過(guò)了三個(gè)月的試用期,準(zhǔn)備轉(zhuǎn)正了一般來(lái)說(shuō),差不多到了轉(zhuǎn)正的時(shí)候,會(huì)進(jìn)行總結(jié)或者分享會(huì)議那么今天我就把看過(guò)的一些學(xué)習(xí)資源主要是博客,博文推薦分享給大家。 1.前言 6月份開(kāi)始出沒(méi)社區(qū),現(xiàn)在差不多9月了,按照工作的說(shuō)法,就是差不多過(guò)了三個(gè)月的試用期,準(zhǔn)備轉(zhuǎn)正了!一般來(lái)說(shuō),差不多到了轉(zhuǎn)正的時(shí)候,會(huì)進(jìn)行總結(jié)或者分享會(huì)議!那么今天我就...
摘要:請(qǐng)注意,我們?cè)诹牧膯卧獪y(cè)試遇到問(wèn)題多思考多查閱多驗(yàn)證,方能有所得,再勤快點(diǎn)樂(lè)于分享,才能寫(xiě)出好文章。單元測(cè)試是指對(duì)軟件中的最小可測(cè)試單元進(jìn)行檢查和驗(yàn)證。 JAVA容器-自問(wèn)自答學(xué)HashMap 這次我和大家一起學(xué)習(xí)HashMap,HashMap我們?cè)诠ぷ髦薪?jīng)常會(huì)使用,而且面試中也很頻繁會(huì)問(wèn)到,因?yàn)樗锩嫣N(yùn)含著很多知識(shí)點(diǎn),可以很好的考察個(gè)人基礎(chǔ)。但一個(gè)這么重要的東西,我為什么沒(méi)有在一開(kāi)始...
閱讀 2520·2021-09-26 10:18
閱讀 3397·2021-09-22 10:02
閱讀 3196·2019-08-30 15:44
閱讀 3333·2019-08-30 15:44
閱讀 1838·2019-08-29 15:25
閱讀 2581·2019-08-26 14:04
閱讀 2047·2019-08-26 12:15
閱讀 2446·2019-08-26 11:43