$(document).ready和window.onload的區(qū)別
- $(document).ready DOM結(jié)構(gòu)加載完之后執(zhí)行
- window.onload 等頁(yè)面所有的東西包括圖片、視頻等都加在完之后執(zhí)行
同步 和 異步
- 區(qū)別:
- 同步:如果當(dāng)前任務(wù)沒(méi)有完成,不會(huì)開(kāi)始下一個(gè)任務(wù)
- 異步:當(dāng)前任務(wù)沒(méi)完成,繼續(xù)開(kāi)始下一個(gè)任務(wù),可以同時(shí)進(jìn)行很多個(gè)任務(wù)
- 所有的循環(huán)都是同步
- 常見(jiàn)的異步:
- 事件 oDiv.onclick = function(){}
- ajax
- 回調(diào) sort(function(){})
- 定時(shí)器 setInterval(function(){},1000)
正則
- 概念:正則就是規(guī)則,就是操作“字符串”
- 作用
- 匹配
- 捕獲字符串
- 作用
- 正則的寫法
- 字面量的寫法: var reg = /^2\d{2}$/g 2xx
- 實(shí)例寫法: var reg = new RegExp('^2\d{2}$');
- 字面量創(chuàng)建和實(shí)例創(chuàng)建的區(qū)別
- 字面量創(chuàng)建特殊含義 \d 這類的不需要轉(zhuǎn)義,但是實(shí)例需要轉(zhuǎn)義
- 字面量創(chuàng)建無(wú)法進(jìn)行變量的拼接,但是實(shí)例創(chuàng)建可以拼接變量
- 正則有兩部分構(gòu)成:
- 元字符
- 具有特殊含義的字符
| 元字符 | 含義 |
|---|---|
| \ | 轉(zhuǎn)義 |
| "|" | 或 |
| () | 分組 |
| . | 除了\n以外的字符 |
| \n | 換行 |
| \b | 開(kāi)頭結(jié)尾和空格 |
| ^ | 開(kāi)頭 |
| $ | 結(jié)尾 |
| \s | 空格 |
| \S | 非空格 |
| \d | 數(shù)字 |
| \D | 非數(shù)字 |
| \w | 數(shù)字字母下劃線 |
| \W | 非數(shù)字字母下劃線 |
| [abc] | 其中的任意一個(gè) |
| [^abc] | 非其中的任意一個(gè) |
- 量詞元字符
| 元字符 | 含義 |
|---|---|
| * | 0到多個(gè) |
| + | 1到多個(gè) |
| ? | 0 或 1 |
| {n} | 正好n個(gè) |
| {n,} | n到多個(gè) |
| {n,m} | n到m個(gè) |
- 修飾符
| 修飾符 | 含義 |
|---|---|
| g | 全局 |
| i | 忽略大小寫 |
| m | 換行 |
- () 的作用
- 提高優(yōu)先級(jí):只要使用到 | 的地方,一定要加 ()
- 分組
- 小分組
- []的作用
- 中括號(hào)中的內(nèi)容只能出現(xiàn)一個(gè)
- 中括號(hào)中. - + 都是他正常的意思,沒(méi)有特殊含義
正則中的主要作用
- 匹配
- reg.test()
- 因?yàn)槠ヅ浞祷氐氖遣紶栔?,所以一般在條件判斷語(yǔ)句和返回值中
- 捕獲
- reg.exec()
- 主要的比較對(duì)象 str.match();
字符串的方法
- str.search(正則)
- str.split(正則)
- str.match(正則)
- str.replace(正則)
正則捕獲的兩大特性
- 懶惰性
- 用全局g來(lái)解決
- 貪婪性
- 在量詞元字符后面加上?號(hào)
正則的屬性
- reg.test() 匹配
- reg.exec() 捕獲
- reg.global() 判斷是否有全局修飾符
- res.lastIndex() 從哪里開(kāi)始查找,一定要加g,否則永遠(yuǎn)從0開(kāi)始找
- res.toString() 把正則轉(zhuǎn)為字符串
? 的作用
- 可有可無(wú) ?
- 解決捕獲時(shí)候的貪婪性; +?
- 只匹配,不捕獲; (?:)
正則的捕獲方法: exec 和 match
- 一般情況下,返回值是一個(gè)長(zhǎng)度為3的數(shù)組;如果有小分組的時(shí)候,小分組從索引為1開(kāi)始依次往后累加;把找到的內(nèi)容的索引和原始字符串推到最后
- 如果沒(méi)有全局g,lastIndex永遠(yuǎn)從索引為0的時(shí)候開(kāi)始找,加了全局g,lastIndex從找到內(nèi)容的下一項(xiàng)內(nèi)容的索引開(kāi)始查找;
- exec 和 match 的區(qū)別
- 有g(shù):exec每次只能拿到一個(gè)符合條件的數(shù)組,但是可以有小分組; match可以拿到所有符合規(guī)則的內(nèi)容,以一個(gè)新數(shù)組的形式返回,但是無(wú)法拿到小分組
- 無(wú)g:exec和match拿到的值時(shí)一樣的;
正則捕獲的方法
- exec
- match
- replace
重復(fù)子項(xiàng)
- \1 代表跟第一個(gè)小分組一模一樣
- \2 代表跟第二個(gè)小分組一模一樣
知識(shí)大致整理:
-
[] 的注意事項(xiàng)
- 中括號(hào)中像 . - _ + 等都沒(méi)有特殊含義;如果放在小括號(hào)中 (+)
- 中括號(hào)不會(huì)出現(xiàn)兩位數(shù),只有一位數(shù)
-
()的用法
- 分組
- 小分組:只想匹配,不想捕獲 (?:XXX)
- 提高優(yōu)先級(jí)的作用
-
? 的作用
- 可有可無(wú) []?
- 解決貪婪性,需要在量詞后面加 ?
- 只想匹配,不想捕獲(?:xxx)
-
捕獲,兩大特性
- 懶惰性
- 解決辦法:g
- 貪婪性
- 解決辦法:(?:xxx)
- 懶惰性