我们要了解cookie和localStorage的区别,首先要了解到两者的优点和缺点
cookie:
cookie是网站的身份识别,配合session配合。
特点:
1、必须在服务器环境中使用
2、在没有设置过期时间,关闭就消失,默认的过期时间是一次会话。
3、cookie要一条一条的存
4、大小容量小,4k左右
5、不管你看到什么,取出来的都是字符串
6、不安全
7在服务器环境下,每次伴随着请求会发往服务器
cookie 怎么存
document.cookie='name=value';
怎么设置到期时间 document.cookie='name=value;expires=xxxx'
过期时间用事件戳表示
目录问题
public cookie1
demo1 cookie2
整个项目网站,只有一套cookie,共享一套cookie,一般cookie存在根目录下
document.cookie='name=value;expires=xxxx;path=/'
怎么取cookie
document.cookie
设置cookie函数
function setCookie(name,value,iDay) {
if(iDay){
var oDate=new Date();
oDate.setDate(oDate.getDate()+iDay);
document.cookie=name+'='+value+';expires='+oDate+';path=/';
}else{
document.cookie=name+'='+value+';path=/';
}
}
获取cookie函数
function getCookie(name) {
var arr=document.cookie.split('; ');
for(var i=0;i<arr.length;i++){
var arr2=arr[i].split('=');
if(arr2[0]==name){
return arr2[1]
}
}
return ''
}
如何删除cookie
function removeCookie(name){
setCookie(name,'',-2);
}
-----------------------------------------------------------------分割线-------------------------------------------------------------
localStorage:
特点:
1、容量5M
2、不会往服务器发数据
3、不会有过期时间
4、没有路径的限制
cookie和localStorage的区别
容量
会不会让服务器发送数据
过期时间
路径限制
cookie查询不到一个返回空字符串,localStorage一个返回undefined,一个返回null
cookie存的是字符串 localStorage是对象
相同点
不安全,不能跨域,不能跨浏览器
-------------------------
localStorage
localStorage.name=value;
localStorage.name
delete localStorage.name
localStorage.setItem(name,value)
localStorage.getItem(name)
localStorage.removeItem(name)
全部清除 localStorage.clear();
这两种方法别混着用