ajax
ajax技術(shù)的目的是讓javascript發(fā)送http請求匹中,與后臺通信帘瞭,獲取數(shù)據(jù)和信息洋丐。ajax技術(shù)的原理是實例化xmlhttp對象呈昔,使用此對象與后臺通信。ajax通信的過程不會影響后續(xù)javascript的執(zhí)行友绝,從而實現(xiàn)異步堤尾。
$.ajax使用方法
常用參數(shù):
1、url 請求地址
2迁客、type 請求方式郭宝,默認(rèn)是'GET',常用的還有'POST'
3掷漱、dataType 設(shè)置返回的數(shù)據(jù)格式粘室,常用的是'json'格式,也可以設(shè)置為'html'
4卜范、data 設(shè)置發(fā)送給服務(wù)器的數(shù)據(jù)
5衔统、success 設(shè)置請求成功后的回調(diào)函數(shù)
6、error 設(shè)置請求失敗后的回調(diào)函數(shù)
7海雪、async 設(shè)置是否異步锦爵,默認(rèn)值是'true',表示異步
jsonp
ajax只能請求同一個域下的數(shù)據(jù)或資源奥裸,有時候需要跨域請求數(shù)據(jù)险掀,就需要用到j(luò)sonp技術(shù),jsonp可以跨域請求數(shù)據(jù)刺彩,它的原理主要是利用了script標(biāo)簽可以跨域鏈接資源的特性迷郑。
頁面上定義一個函數(shù)枝恋,引用一個外部js文件创倔,外部js文件的地址可以是不同域的地址,外部js文件的內(nèi)容如下:
aa({"name":"tom","age":18});
外部js文件調(diào)用頁面上定義的函數(shù)焚碌,通過參數(shù)把數(shù)據(jù)傳進(jìn)去畦攘。
正則表達(dá)式
1、什么是正則表達(dá)式:
能讓計算機讀懂的字符串匹配規(guī)則十电。
2知押、正則表達(dá)式的寫法:
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 匹配一個數(shù)字台盯,即0-9
\D 匹配一個非數(shù)字罢绽,即除了0-9
\w 匹配一個單詞字符(字母、數(shù)字静盅、下劃線)
\W 匹配任何非單詞字符良价。等價于[^A-Za-z0-9_]
\s 匹配一個空白符
\S 匹配一個非空白符
\b 匹配單詞邊界
\B 匹配非單詞邊界
. 匹配一個任意字符,除了換行符‘\n’和回車符‘\r’
\1 重復(fù)子項
4蒿叠、量詞:對左邊的匹配字符定義個數(shù)
? 出現(xiàn)零次或一次(最多出現(xiàn)一次)
- 出現(xiàn)一次或多次(至少出現(xiàn)一次)
- 出現(xiàn)零次或多次(任意次)
{n} 出現(xiàn)n次
{n,m} 出現(xiàn)n到m次
{n,} 至少出現(xiàn)n次
5明垢、任意一個或者范圍
[abc123] : 匹配‘a(chǎn)bc123’中的任意一個字符
[a-z0-9] : 匹配a到z或者0到9中的任意一個字符
6、限制開頭結(jié)尾
^ 以緊挨的元素開頭
$ 以緊挨的元素結(jié)尾
7市咽、修飾參數(shù):
g: global痊银,全文搜索,默認(rèn)搜索到第一個結(jié)果接停止
i: ingore case施绎,忽略大小寫溯革,默認(rèn)大小寫敏感
m: multiple lines,多行搜索(更改^ 和$的含義谷醉,使它們分別在任意一行對待行首和行尾匹配鬓照,而不僅僅在整個字符串的開頭和結(jié)尾匹配)
8、常用函數(shù)
1孤紧、test
用法:正則.test(字符串) 匹配成功豺裆,就返回真,否則就返回假
2号显、search
用法:字符串.search(正則) 匹配成功臭猜,返回位置,否則返回-1
3押蚤、match
用法: 字符串.match(正則)蔑歌;匹配成功,就返回匹配成功的數(shù)組揽碘,否則就返回null
4次屠、replace
用法:字符串.replace(正則,新的字符串) 匹配成功的字符去替換新的字符
正則默認(rèn)規(guī)則
匹配成功就結(jié)束雳刺,不會繼續(xù)匹配劫灶,區(qū)分大小寫