cookie
会话:他的出现就是为了一个问题 - http无状态
登陆页面,登陆了用户名,跳转到首页,首页应该保持登陆的状态
会话解决问题的原理:利用多次请求都在同一个浏览器上,给浏览器开辟一个空间,用来存储数据
cookie:会话的一种,会话中存储在客户端的一种
setcookie
document.cookie = 键值对
document.cookie = 'name=songjiang';
var date = new Date(); date.setTime(date.getTime()+7*24*3600*1000-8*3600*1000); // // cookie只能识别世界标准时间,获取到的date是中国东八区的时间 document.cookie = 'age=12;expires='+date+";path=/"; // 设置失效时间
cookie的特性:
1.cookie是以键值对的形式去存储的
2.cookie是以域名的形式存储的 - 当前域名下设置的只能在当前域名下使用
3.cookie是有时效性 - 默认的有效期是当前浏览器关闭就消失
4.cookie是分文件夹存储的 - 当前文件夹下设置的cookie,只能在当前文件夹下使用
setcookie封装的函数
function setCookie(key,value,seconds,path="/"){ var date = new Date(); date.setTime(date.getTime()+seconds*1000-8*3600*1000); document.cookie = `${key}=${value};'expires'='${date}';'path'='${path}'` } setCookie('username','张三',7200) setCookie('name','张三',24*7*3600) setCookie('age',20,7200) setCookie('age',200,7200);//修改增加的cookie
获取cookie的值封装的函数
function getCookie(key){ var arr = document.cookie.split('; ') for(var i=0;i<arr.length;i++){ var brr = arr[i].split('=') if(brr[0]==key){ return brr[1]; } } }
删除cookie
function setCookie(key,value,seconds,path="/"){ var date = new Date(); date.setTime(date.getTime()+seconds*1000-8*3600*1000); document.cookie = `${key}=${value};expires=${date};path=${path}` } function removeCookie(key,path="/"){ setCookie(key,null,-1,path) }
解码
var n = decodeURI(name) console.log(n);
编码
var str = "王五"; str = encodeURI(str) console.log(str);

浙公网安备 33010602011771号