cookie
// 存储 cookie
document.cookie="name=xiaobo"
document.cookie="age=24"
console.log(document.cookie)
//查看 cookie中的值
//方法1
console.log(getCookie())//{name: 'xiaobo', age: '24'}
function getCookie() {
return document.cookie.split(";").reduce((value, item) => {
var arr = item.split("=");
value[arr[0].trim()] = arr[1].trim();
return value;
}, {})
}
//方法2
console.log(getCookie())
function getCookie() {
return document.cookie.matchAll(/([^;]*?)=([^;]*)/g).reduce((value, item) => {
value[item[1].trim()] = item[2].trim();
return value;
}, {})
}
cookie的特点
1.cookie存储较小,仅有5K大小
2.cookie在通信时,会自动往返于客户端和服务端之间(不跨域),当客户端向服务端发送消息时,cookie就会被自动携带发送给服务端,并且服务端可以写入新的cookie发送个客户端
3.cookie存储是有时限,当浏览器关闭,cookie的数据丢失,可以通过设置时效性改变cookie的时长
4.cookie是可以被浏览器清除的,所以获取时一定要先判断,而且只能使用`字符串`存储
5.cookie在不同域中是不同的,不能跨域使用
6.cookie是根据当前路径存储的,不同路径中不能相互调用,父级不能获取子级路径中的cookie,但是子级路径可以获取父级的cookie
webstroage
可以用来存储一些临时数据
localStorage sessionStorage cookie
1.存储大小 5M 5M 5K
2.存储时长 永久存储 临时存储 临时存储+时效存储
3.通信携带 不会携带 不会携带 自动携带往返客户端和服务端之间
4.域是否共用信息 不会共用 不会共用 不会共有
5.路径共有 不区分路径 同文件不同窗口都不会共有 父级不能使用子级路径数据,子级可以用父级路径数据
6.存储方式 简单 简单 存储简单,获取复杂
7.事件 支持stroage事件 不支持事件 不支持事件
8.存储数据类型 字符串 字符串 字符串
localStorage的操作
增加数据
1. localStorage.setItem("a","10");
2.localStorage.user="xietian";//重点使用
获取数据
1.localStorage.getItem("a")
2.onsole.log(localStorage.user)
删除数据
1.localStorage.removeItem("a")
2.delete localStorage.user;
清空数据
localStorage.clear();
名词解释
key localStorage存储的属性名
newValue localStorage存储的新的属性值
oldValue localStorage存储上次旧的属性值
md5加密
var str="xiaobo";
var str1=hex_md5(str)
console.log(str1)//ae41d0ce5f6b94391cf5cd027592ee7d
//md5不能反向解密
console.log(hex_md5("张存基"))//3ab6a99cad7e6337141ccffeff4f5ab5