js获取浏览器cookie值函-数封装
cookie中的值 每个明知对用分号;隔开。所以我们设置cookie这样设置
document.cookie="user=dai;age=45"
设置cookie的生命周期
设置cookie的生命周期使用expires这个名,单位是天,现在出一个新的名叫max-age单位是秒。
删除cookie
将生命周期提前结束,就是删除cookie有些浏览器不识别汉字需要编码
encodeURIComponent() 对汉字进行编码
decodeURIComponent() 对编码的结果进行解码
decodeURI() 函数可对 encodeURI() 函数编码过的 URI 进行解码
<script type="text/javascript">
var test1="http://www.w3school.com.cn/My first/"
document.write(encodeURI(test1)+ "<br />")//编码
document.write(decodeURI(test1))//解码
</script>
http://www.w3school.com.cn/My%20first///编码之后的结果
http://www.w3school.com.cn/My first///解码之后的结果
实现方法
ar getParam = function (name) {
var r = new RegExp("(\?|#|&)" + name + "=([^&#\?]*)(&|#|$|\?)");
var m = window.location.href.match(r);
//正则表达式匹配,返回的是一个数组
return decodeURI(!m ? "" : m[2]);
};
将所有存储的cookie都存入一个对象
function deal(){ var cookie = document.cookie;
var arr = cookie.split('; ');//注意是 分号空格
var obj = {};
arr.forEach(function(item){
var itemArr = item.split('=');
obj[itemArr[0]] = itemArr[1];
})
return obj;
}
返回的是参数对应的cookie
function getCookie(name){
var arr = document.cookie.split("; ");//注意是分号空格
for(var i = 0;i<arr.length;i++){
var arrName = arr[i].split("=");
if(arrName[0] == name){
return arrName[1];
}
}
return " ";
}
本文来自博客园,作者:JackieDYH,转载请注明原文链接:https://www.cnblogs.com/JackieDYH/p/17634685.html