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. map
let arr = [1,2,3,4,5]
let arr2 = arr.map(function(item, index){
// item 为 元素; index为元素的索引号
return item * 2
})
console.log(arr2)
// 2. join
let 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|煞笔/g
btn.addEventListener('click', function(){
let str = tx.value
let newStr = str.replace(reg, '***')
div.innerHTML = newStr
})