JavaScript进阶:WebAPIs重点知识整理3
1 本地存储
存储容量大:约5M
1.1 localStorage


1.1.1 存储
localStorage.setItem('username','张三')
localStorage.setItem('password','123456')
1.1.2 获取
console.log(localStorage.getItem('username'))
1.1.3 删除
localStorage.removeItem('username')
1.2 sessionStorage

// 存储
sessionStorage.setItem('username','张三')
sessionStorage.setItem('password','123456')// 获取console.log(sessionStorage.getItem('username'))// 删除
sessionStorage.removeItem('username')
1.3 本地存储处理复杂数据类型

<script>const obj = {name:'张三',age:18,gender:'男'}// 复杂数据类型存储,必须转换为Json字符串存储// 1. 因为存只能存字符串,必须转换为Json字符串存储localStorage.setItem('obj',JSON.stringify(obj))// {"name":"张三","age":18,"gender":"男"} -> 为Json对象,属性和值都有引号,而且都是双引号// 2. 将json字符串转换为对象const obj2 = JSON.parse(localStorage.getItem('obj'))console.log(obj2)</script>
2 数组中map()和join()方法

<script>// 1. maplet arr = [1,2,3,4,5]let arr2 = arr.map(function(item, index){// item 为 元素; index为元素的索引号return item * 2})console.log(arr2)// 2. joinlet str = arr.join('-')console.log(str)</script>

3 正则表达式
语法:
/reg/
检查:
reg.test(被检测的字符串) // test方法返回true或false,表示是否符合正则表达式规则。
reg.exec(被检测的字符串) // exec方法返回一个数组,表示匹配的结果。


3.1 修饰符

/java/i -> 表示不区分大小写,匹配java或JAVA或JaVa......都行
/java/ig -> 不区分大小写, 全局匹配

reg1 = /^java is the language$/ig -> 全局精确匹配
str1 = 'java is the language'
console.log(reg1.test(str1)) // true
3.2 replace

案例:
// replace 字符替换// 正则表达式过滤敏感词const tx = document.querySelector('textarea')const btn = document.querySelector('button')const div = document.querySelector('div')const reg = /傻逼|傻B|煞笔/gbtn.addEventListener('click', function(){let str = tx.valuelet newStr = str.replace(reg, '***')div.innerHTML = newStr})
