摘要:概要摘錄的的模板的部分代碼,整理一下解析模板的思路。重點在正則的用法的掌握。
概要:摘錄的jquery的模板的部分代碼,整理一下解析模板的思路。重點在正則的用法的掌握。
分析代碼內容解析后代碼:
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, " ") // 將回車,換行,制表符 替換成空格,將代碼拍平 .split("<--").join(" ") //將替換部分的開始符替換成 ,不要糾結,下面會解釋為什么這么做 .replace(new RegExp("((^|-->)[^ ]*)"", "g"), "$1 ") //不以 開頭的字符(可以沒有)+"或者--> + 以外的字符(可以沒有)+" ,如果滿足條件,$1 里的$1為前面()的部分,相當于將"替換為 .replace(new RegExp(" =(.*?)-->", "g"), "",$1,"") // 為前面的<--,匹配下面模板中的 ,替換內容",$1," 即()內匹配到的users[i].name 加上前綴",和后綴," .split(" ").join("");") //不符合上面規則的 即<--替換為"); .split("-->").join("p.push("") //不符合上面規則的-->替換為p.push("); .split(" ").join("""); //第三行將"替換為",此處再替換回" //模板部分
//<-- 變為了"); --> 變為p.push(" Name:"" //此處的"變為了" 被規則匹配為",users[i].name,"的單詞分隔符
//<-- 變為了"); --> 變為p.push("
所以有兩種用法,一種是承前啟后 <-- 變為了"); --> 變為p.push("一種是分隔字符 ",$1,"
文例子出處:JavaScript Micro-Templating
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/99758.html
摘要:看起來沒有集合框架,線程,等那么耀眼,但它可是很多框架的基礎啊回復反射查看相關文章,先把基礎學會,后面的得用到它。 回頭看看, 我進入Java 領域已經快15個年頭了, 雖然學的也一般, 但是分享下我的心得,估計也能幫大家少走點彎路。[入門]我在2001年之前是C/C++陣營, 有C和面向對象的基礎, 后來轉到Java ,發現沒有指針的Java真是好簡單, 另外Java 的類庫好用的讓...
摘要:前言月份開始出沒社區,現在差不多月了,按照工作的說法,就是差不多過了三個月的試用期,準備轉正了一般來說,差不多到了轉正的時候,會進行總結或者分享會議那么今天我就把看過的一些學習資源主要是博客,博文推薦分享給大家。 1.前言 6月份開始出沒社區,現在差不多9月了,按照工作的說法,就是差不多過了三個月的試用期,準備轉正了!一般來說,差不多到了轉正的時候,會進行總結或者分享會議!那么今天我就...
閱讀 2516·2021-09-26 10:18
閱讀 3395·2021-09-22 10:02
閱讀 3192·2019-08-30 15:44
閱讀 3329·2019-08-30 15:44
閱讀 1836·2019-08-29 15:25
閱讀 2580·2019-08-26 14:04
閱讀 2042·2019-08-26 12:15
閱讀 2442·2019-08-26 11:43