一.本地存儲
1.介紹
- 將數據存儲到用戶瀏覽器當中
- 設置、讀取方便、頁面刷新不丟失數據
2.本地存儲分類-localStorage
a.語法
(1)存儲數據
//存儲數據 localStorage.setItem(鍵,值)如
localStorage.setItem('uname','哈哈')
(2)獲取數據
//獲取方式 都加引號 localStorage.getItem('鍵')
localStorage.getItem('uname')
(3)刪除數據
//刪除數據 localStorage.removeItem(鍵)
localStorage.removeItem('uname')
(4)修改數據
//修改數據 localStorage.setItem(鍵,修改內容)
localStorage.setItem('uname','嘻嘻')
注意
- 本地存儲只能存儲字符串類型
- 所有的鍵都要加引號
3.存儲復雜數據類型
(1)直接存一個對象,不能直接使用
const obj = {uname: '哈哈',age: 99,gender: '女'}//存儲復雜數據類型localStorage.setItem('obj', obj)
(2)將負責數據類型轉化成JSON字符串,存儲到本地
語法:JSON.stringfy(復雜數據類型)
localStorage.setItem('obj',JSON.stringify(obj))
(3)取的時候把JSON轉換回對象
console.log(JSON.parse(localStorage.getItem('obj')))
4.數組中的map方法
- 遍歷數組處理數據,并且返回新的數組
- map也稱為映射
const arr=['red','blue','pink']
arr.map(function(ele,index){
return ele+'顏色'
})
5.join()方法
- 把數組中的所有元素轉換一個字符串
const arr=['red顏色','blue顏色','green顏色']
//小括號為空則逗號分割
newArr.join()
//小括號是空字符串,則元素之間沒有分隔符號
newArr.join('')
//小括號里是什么就以什么為分割
newArr.join('|')//以|為分割
二.正則表達式
1.語法
//1.定義規則,查找字符串里是否含有//的一條規則
const 變量名=/表達式/
//變量名一般使用reg,正則表達式的意思//2.是否匹配
規則.test(查找內容)//返回的值是true或false//3.exec()
規則.exec(查找內容)
2.元字符(特殊字符)
a.邊界符,提示字符所處的位置
邊界符 | 說明 |
^ | 表示匹配行首的文本(以誰開始) |
$ | 表示匹配行尾的文本(以誰結束) |
^和$一起出現,表示必須是精確匹配
b.量詞(表示重復次數)
量詞 | 說明 |
* | 重復0次或多次 |
+ | 重復一次或更多次 |
? | 重復0次或1次 |
{n} | 重復n次 |
{n,} | 重復n次或更多次 |
{n,m} | 重復n到m次 |
c.字符類
(1)[ ]匹配字符型
只要包含里面其中的一個(只選一個)
形如:[abc](a,b,c其中一個)、[a-z](a到z其中一個)、[a-zA-Z0-9](表示小寫a到z,大寫A到Z,數字0到9)
(2) . 匹配除換行符之外的任何單個字符
(3)預定義:某些常見模式的簡寫方式
預定類 | 說明 |
\d | 匹配0-9之間的任一數字,相當于[0-9] |
\D | 匹配所有0-9以外的字符,相當于[^0-9] |
\w | 匹配任意的字母、數字和下劃線,相當于[A-Za-z0-9_] |
\W | 除所有字母、數字和下劃線,以外的字符,相當于[^A-Za-z0-9_] |
\s | 匹配空格(包括換行符、制表符、空格符等),相當于[\t\r\n\v\f] |
\S | 匹配非空格的字符,相當于[^\t\r\n\v\f] |
日期格式:? ^\d{4}-\d{1,2}-\d{1,2}
3.修飾符
a.語法
/表達式/修飾符
i--不區分大小寫(ignore)
g--匹配所有滿足正則表達式的結果(global),全局查找
b.replace替換
字符串.replace(/正則表達式/,'替換的文本')