正則表達(dá)式
1千扶、什么是正則表達(dá)式:
能讓計(jì)算機(jī)讀懂的字符串匹配規(guī)則步势。
2给涕、正則表達(dá)式的寫(xiě)法:
var re=new RegExp('規(guī)則', '可選參數(shù)');
var re=/規(guī)則/參數(shù);
3、規(guī)則中的字符
1)普通字符匹配:
如:/a/ 匹配字符 ‘a(chǎn)’帅容,/a,b/ 匹配字符 ‘a(chǎn),b’
2)轉(zhuǎn)義字符匹配:
\d 匹配一個(gè)數(shù)字峡迷,即0-9
\D 匹配一個(gè)非數(shù)字银伟,即除了0-9
\w 匹配一個(gè)單詞字符(字母你虹、數(shù)字、下劃線)
\W 匹配任何非單詞字符彤避。等價(jià)于[^A-Za-z0-9_]
\s 匹配一個(gè)空白符
\S 匹配一個(gè)非空白符
\b 匹配單詞邊界
\B 匹配非單詞邊界
. 匹配一個(gè)任意字符傅物,除了換行符‘\n’和回車(chē)符‘\r’
\1 重復(fù)子項(xiàng)
4、量詞:對(duì)左邊的匹配字符定義個(gè)數(shù)
? 出現(xiàn)零次或一次(最多出現(xiàn)一次)
(1) 出現(xiàn)一次或多次(至少出現(xiàn)一次)
(2) 出現(xiàn)零次或多次(任意次)
{n} 出現(xiàn)n次
{n,m} 出現(xiàn)n到m次
{n,} 至少出現(xiàn)n次
5琉预、任意一個(gè)或者范圍
[abc123] : 匹配‘a(chǎn)bc123’中的任意一個(gè)字符
[a-z0-9] : 匹配a到z或者0到9中的任意一個(gè)字符
6董饰、限制開(kāi)頭結(jié)尾
^ 以緊挨的元素開(kāi)頭
$ 以緊挨的元素結(jié)尾
7、修飾參數(shù):
g: global圆米,全文搜索尖阔,默認(rèn)搜索到第一個(gè)結(jié)果接停止
i: ingore case,忽略大小寫(xiě)榨咐,默認(rèn)大小寫(xiě)敏感
m: multiple lines,多行搜索(更改^ 和$的含義谴供,使它們分別在任意一行對(duì)待行首和行尾匹配块茁,而不僅僅在整個(gè)字符串的開(kāi)頭和結(jié)尾匹配)
8、常用函數(shù)
1桂肌、test
用法:正則.test(字符串) 匹配成功数焊,就返回真,否則就返回假
2崎场、search
用法:字符串.search(正則) 匹配成功佩耳,返回位置,否則返回-1
3谭跨、match
用法: 字符串.match(正則)干厚;匹配成功,就返回匹配成功的數(shù)組螃宙,否則就返回null
4蛮瞄、replace
用法:字符串.replace(正則,新的字符串) 匹配成功的字符去替換新的字符
正則默認(rèn)規(guī)則
匹配成功就結(jié)束谆扎,不會(huì)繼續(xù)匹配挂捅,區(qū)分大小寫(xiě)
jsonp
ajax只能請(qǐng)求同一個(gè)域下的數(shù)據(jù)或資源,有時(shí)候需要跨域請(qǐng)求數(shù)據(jù)堂湖,就需要用到j(luò)sonp技術(shù)闲先,jsonp可以跨域請(qǐng)求數(shù)據(jù),它的原理主要是利用了script標(biāo)簽可以跨域鏈接資源的特性无蜂。
jsonp的原理如下:
<script type="text/javascript">
function aa(dat){
alert(dat.name);
}
</script>
<script type="text/javascript" src="....../js/data.js"></script>
頁(yè)面上定義一個(gè)函數(shù)伺糠,引用一個(gè)外部js文件,外部js文件的地址可以是不同域的地址酱讶,外部js文件的內(nèi)容如下:
aa({"name":"tom","age":18});
外部js文件調(diào)用頁(yè)面上定義的函數(shù)退盯,通過(guò)參數(shù)把數(shù)據(jù)傳進(jìn)去。
本地存儲(chǔ)
本地存儲(chǔ)分為cookie,以及新增的localStorage和sessionStorage
1渊迁、cookie 存儲(chǔ)在本地慰照,容量最大4k,在同源的http請(qǐng)求時(shí)攜帶傳遞琉朽,損耗帶寬毒租,可設(shè)置訪問(wèn)路徑,只有此路徑及此路徑的子路徑才能訪問(wèn)此cookie箱叁,在設(shè)置的過(guò)期時(shí)間之前有效墅垮。
jquery 設(shè)置cookie2、localStorage 存儲(chǔ)在本地耕漱,容量為5M或者更大算色,不會(huì)在請(qǐng)求時(shí)候攜帶傳遞,在所有同源窗口中共享螟够,數(shù)據(jù)一直有效灾梦,除非人為刪除,可作為長(zhǎng)期數(shù)據(jù)妓笙。
//設(shè)置:
localStorage.setItem("dat", "456");
localStorage.dat = '456';
//獲热艉印:
localStorage.getItem("dat");
localStorage.dat
//刪除
localStorage.removeItem("dat");
3、sessionStorage 存儲(chǔ)在本地寞宫,容量為5M或者更大萧福,不會(huì)在請(qǐng)求時(shí)候攜帶傳遞,在同源的當(dāng)前窗口關(guān)閉前有效辈赋。
localStorage 和 sessionStorage 合稱為Web Storage , Web Storage支持事件通知機(jī)制鲫忍,可以將數(shù)據(jù)更新的通知監(jiān)聽(tīng)者,Web Storage的api接口使用更方便钥屈。
iPhone的無(wú)痕瀏覽不支持Web Storage饲窿,只能用cookie。
jqueryUI
jQuery UI是以 jQuery 為基礎(chǔ)的代碼庫(kù)焕蹄。包含底層用戶交互逾雄、動(dòng)畫(huà)、特效和可更換主題的可視控件腻脏。我們可以直接用它來(lái)構(gòu)建具有很好交互性的web應(yīng)用程序鸦泳。
jqueryUI 網(wǎng)址
http://jqueryui.com/
Draggable
1、設(shè)置數(shù)值的滑動(dòng)條
2永品、自定義滾動(dòng)條