JS高階閉包
閉包:
函式在呼叫的時候會形成一個私有的作用域,對內部的變數起到保護的作用,這就是閉包
變數銷燬:
1.人為銷燬:var a=12; a=null;
2.自然銷燬 :函式在呼叫完成之後 瀏覽器會自動銷燬函式內的變數
function fn(){
var a=9;
a++;
console.log(a)
}
fn()
fn()
fn()
fn()
3.閉包作用:
1.保護變數
2.快取資料
4.函式閉包的種類:
1.函式式
2.物件式
5.函式 返回值的問題
每一個函式都有一個返回值,如果人為返回,return的什麼就是什麼,如果沒有就是undefined
6.閉包怎樣快取資料:
7.正則regexp
正則就是一條規則,用於檢驗字串的格式,目標就是字串。
只要要是表單提交的資料都是字串
8.正則定義:
1.var reg=new regexp()
2.var reg=/格式/;
9.正則的方法
就兩大功能,一個是匹配,匹配成功就是TRUE,第二個是不火,若果有就拿出來
text()用於匹配
exce用於捕獲
10.正則修飾符 如何去匹配
1.去不區分大小寫 I 代表忽略大小寫
2.全域性 g代表全域性匹配
3.m代表多行匹配
怎麼使用
- var reg=new RegExp(“hello”,g)
- Var reg=/hello/gi
11.字串的方法 跟正則有關的
1.match()查詢一個或多個與正則相匹配的 有就返回的是查詢的結果,沒有就是null
2.search() 匹配和正則相同的字元,有就返回索引,沒有就是-1
- replace()匹配與正則相同的,並替換掉,返回的是替換後的字串
12,正則的方括號
[abc] 代表查詢方括號中的任何字元
[^abc]代表查詢任何一個不在方括號之間的字元
[0-9]查詢0到9之間的數字
[a-z] 查詢任何小寫a到小寫z的字元
[A-Z]查詢任何大寫A到大寫Z的字元
[A-z]查詢大寫A到小寫z的字元
(red|blue|green)
13元字元
.代表單個字元
\w代表單詞字元 數字 字母 _
\W 代表非單詞字元
\d 代表數字
\D 代表非數字
\s 代表空白字元
\S 代表非空白字元
\b 代表單詞邊界
\B 代表非單詞邊界
14. 量詞
- n+ 代表至少1個n的字元
- n* 代表0個或多個n
- n? 包含0個或1個n
- N{x} 包含x個n
- N{x,} 包含至少x個n
- N{x,y} 包含大於等於x個小於等於y個n
- N$ 包含以n結尾的字串
- ^n包含以n開頭的字元
- ?=n 指定字串後面緊跟的n的字串