javascript封装 Cookie 应用接口

前端之家收集整理的这篇文章主要介绍了javascript封装 Cookie 应用接口前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

文章记录本人在学习 Cookie 中看书理解到的一些东西,加深记忆和并且整理记录下来,方便之后的复习。

封装函数

在默认的情况下存取Cookie是一件比较麻烦的事情。由于Cookie是通过字符串来存储信息的,所以容易导致在执行赋值运算的时需要转换读取信息的数据类型。而且Cookie信息的字符串本身就令人讨厌,在经常使用Cookie信息的 Web 应用中格外的不方便。所以需要自行的封装一个Cookie函数来提供开发效率!

定义一个函数Cookie(),这个函数能够写入指定的Cookie信息,删除指定的Cookie信息,也能够读取指定名称的Cookie值,另外,在该函数中还可以制定Cookie信息的有效期、有效路径、作用域和安全性选项设置。完整的代码

// 把所有字符串信息都存入数组,然后<a href="/tag/diaoyong/" target="_blank" class="keywords">调用</a> join() <a href="/tag/fangfa/" target="_blank" class="keywords">方法</a>转换为字符串,并写入 Cookie 信息 document.cookie = [name,'=',encodeURIComponent(value),expires,path,domain,secure].join(''); } else { // 如果第二个参数不存在 var CookieValue = null; if (document.cookie && document.cookie != '') { var Cookie = document.cookie.split(';'); for (var i = 0; i < Cookies.length; i++) { var Cookie = (Cookie[i] || "").replace( /^\s+|\s+$/g,""); if (Cookie.substring(0,name.length + 1) == (name + '=')) { CookieValue = decodeURIComponent(Cookie.substring(name.length + 1)); break; } } } return CookieValue; }

};

如何使用

写入Cookie信息:

站点有效 domain: "www.baidu.com",// 有效域名 secure: true // 加密数据传输 });

2.读取Cookie信息:

3.删除Cookie信息:

再给大家分享一个封装好的代码

// 为有效日期赋值
if (days) {
var date = new Date();
//设置有效期(当前时间+时间段)
date.setTime(date.getTime() + (days 24 60 60 1000));//时间段为毫秒数
expires = "; expires=" + date.toGMTString();
}

// 给cookie赋值 name,value和expiration date(有效期)
document.cookie = name + "=" + value + expires + "; path=/";
}
//读取cookie数据
function readCookie(name) {
var searchName = name + "=";
var cookies = document.cookie.split(';');
for(var i=0; i < cookies.length; i++) {
var c = cookies[i];
while (c.charAt(0) == ' ')
c = c.substring(1,c.length);
if (c.indexOf(searchName) == 0)
return c.substring(searchName.length,c.length);
}
return null;
}
//清楚所有的cookie
function eraseCookie(name) {
// 将时间设置成-1将清除存储在cookie中的数据
writeCookie(name,"",-1);
}

最后,如果文章有什么错误和疑问的地方,请指出。与sf各位共勉!

猜你在找的JavaScript相关文章