检测浏览器是支持cookie
cookie是以很小的文件来保存数据,常用于: 会员登录、购物车等
alert(typeof document.cookie)
cookie的组成
name=value
完整的形式:
name=value;[expires=date];[path=path];[domian=somewhere.com];[secure]
写入cookie
document.cookie="user="+encodeURIComponent("赵文娟");
读取cookie
decodeURIComponent(document.cookie)
Cookie的过期方式有两种
1、关闭浏览器 cookie获过期
2、到了cookie的设置的过期的时间
document.cookie="user="+encodeURIComponent("赵文娟")+";expires"+new Date(0);
secure的使用,必须是https可以访问
document.cookie="user="+encodeURIComponent("赵文娟")+";secure";
封装对cookie的操作
封装设置cookie的函数
function setCookie(name,value,expires,path,domain,secure) {
var cookieText=encodeURIComponent(name)+'='+encodeURIComponent(value);
if(expires instanceof Date){
cookieText+=";expires="+expires;
}
if(path){
cookieText+=";path="+path;
}
if(domain){
cookieText+=";domain="+domain;
}
if(secure){
cookieText+=";secure";
}
document.cookie=cookieText;
}
function setCookieDate(day) {
var date;
if(typeof day=="number"&&day>0){
date=new Date();
date.setDate(date.getDate()+day);
}
else{
console.log("输入的日期格式有错误")
}
return date;
}
获取cookie的函数
function getCookie(name){
var cookieName=encodeURIComponent(name)+'=';
var cookieStart=document.cookie.indexOf(cookieName);
var cookValue=null;
if(cookieStart>-1){
var cookieEnd=document.cookie.indexOf(";",cookieStart);
if(cookieEnd==-1){
cookieEnd=document.cookie.length;
}
cookValue=decodeURIComponent(document.cookie.substring(cookieStart+cookieName.length,cookieEnd));
}
return cookValue;
}
对上面来个函数的使用
setCookie('user','赵文娟',setCookieDate(7));
setCookie('url','yc60.com',setCookieDate(7));
setCookie('email','yc60.com@email',setCookieDate(7));
alert(getCookie('user')) ;
console.log(document.cookie);
html5支持的sessionStorge和localStorge
sessionStorage.setItem("name","赵文娟");
alert(sessionStorage.getItem("name"));
但是关闭了浏览器以后sessionStorage存储的内容就没有了
删除sessionStorge的内容
sessionStorage.removeItem("name");
localStorge和sessionStorage的使用方法相同,但是localStorge在关闭了浏览器以后不会删除