1. 程式人生 > >JS高階閉包

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代表多行匹配

怎麼使用

  1. var reg=new RegExp(“hello”,g)
  2. Var reg=/hello/gi

 

11.字串的方法 跟正則有關的

1.match()查詢一個或多個與正則相匹配的 有就返回的是查詢的結果,沒有就是null

 

2.search() 匹配和正則相同的字元,有就返回索引,沒有就是-1

 

  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. 量詞

  1. n+ 代表至少1個n的字元
  2. n* 代表0個或多個n
  3. n? 包含0個或1個n
  4. N{x} 包含x個n
  5. N{x,} 包含至少x個n
  6. N{x,y} 包含大於等於x個小於等於y個n
  7. N$  包含以n結尾的字串
  8. ^n包含以n開頭的字元
  9. ?=n 指定字串後面緊跟的n的字串