0
点赞
收藏
分享

微信扫一扫

js获取浏览器cookie值函-数封装



cookie中的值   每个明知对用分号;隔开。所以我们设置cookie这样设置
document.cookie="user=dai;age=45"
设置cookie的生命周期
  设置cookie的生命周期使用expires这个名,单位是天,现在出一个新的名叫max-age单位是秒。
删除cookie
  将生命周期提前结束,就是删除cookie

有些浏览器不识别汉字需要编码
encodeURIComponent()    对汉字进行编码
decodeURIComponent()   对编码的结果进行解码


js获取浏览器cookie值函-数封装_cookie

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 " ";
}





举报

相关推荐

0 条评论