cookie
cookie : 是浏览器 提供的一项目功能 是一个本地的存储文件 用于存储数据数值
前端 / 后端 都可以调用 cookie 进行操作
1 cook的基本属性:
- name 键名;
- value 键值;
- domain 域名; 如果不写默认是 当前文件夹根目录 如果只是在当前文件夹下需要设置
- /bk_2120/shop_demo/pages/ 根目录到该文件夹
- expires 有效期/时效/保质期
cookie 特点 ;: 必须服务器运行 只能存储字符串 最多存储4k 时效性 超过了时间就删除
1设置cookie 封装函数
// 所设cookie 函数
// @param name cookie 的键名
// @param value cookie 的键名
// @paeam expires cookie的时效性 默认是''
// @param path cookie 的默认值 默认值''
function mySetCookie (name,value,time='',path=''){
//time 是时效性 根据数据设定时效性
if(time!==''){
const t = new Date();
//未来事件什么时候清除 现在事件 + 我需要多久清除 - 世界标准时间的8小时差值
t.setTime(t.getTime()+time*1000-8*60*60*1000)
time= t
}
// 设定cookie
document.cookie=`${name}=${value};expires=${time};path=${path}`
}
2 获取 cookie 转化为对象
functtion myGetCookie(){
//定义一个对象 存储转化结果
const obj= {};
//获取cookie 字符串
let str = document.cookie;
//全是黑的字符串
const arr= str.split(; )
变成数组 但是数组还是中间有等于号
arr.forEach(item=>{
const = arr1= item.split('=')
obj[arr1[0]]=arr1[1]
})
return obj
}
具体分析
二 localstorage
浏览器提供的一向功能 在本地存储 数值 数据
- 本地就可以运行
- 只能前端可以操作
- 只能手动操作 不然会一直存在
- 路径只能是根目录
- 可以存储字符串 也可以存储json字符串
- 一般可以存储4m左右
//语法形式1
window.localStorage.setItem('name', '吴永谊');
//语法形式2
localStorage.age = 18;
//语法形式3 添加数组
localStorage.arr = JSON.stringify([1, 2, 3, 4, 5, 6])
//获取里面的age 的值
let res = localStorage.age;
//获取里面的name
let res1 = localStorage.name;
// 把数组转化回js 语言
let arr1 = JSON.parse(localStorage.arr);
//删除name语法形式1
window.localStorage.removeItem('name')
//删除语法形式2
delete (localStorage.age)