cookie 页面缓存(存储数据)

sessionStorage 、localStorage 和 cookie 之间的区别
共同点:都是保存在浏览器端,且同源的。

区别:cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。

cookie数据不能超过4k,同时因为每次http请求都会携带cookie,所以cookie只适合保存很小的数据,如会话标识。

cookie只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭。

cookie也是在所有同源窗口中都是共享的。

 
/**
 * 存入cookie
 * @param cookieName
 * @param cookieValue
 */
function setCookie(cookieName, cookieValue) {
    
    var Days = 7;  
    var exp = new Date();  
    exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);//过期时间一个星期分钟  
    document.cookie = cookieName + "=" + escape(cookieValue) + ";expires=" + exp.toGMTString()+";path=/";
}

/**
 * 获取cookie
 */
function getCookie(name) {
    
    var cookies = document.cookie.split(";");
    for(var i = 0; i < cookies.length; i++){
            var cookieCrumbs = cookies[i].split("=");
            var cookieName = cookieCrumbs[0];
            var cookieValue = cookieCrumbs[1];
            if (cookieName == name){
                return cookieValue;
            }
    }    
    return null;
}
/**
 * 删除cookies
 */
function delCookie(name) {
    var exp = new Date();
    exp.setTime(exp.getTime() - 1);
    var cval=getCookie(name);
    if(cval!=null)
        document.cookie= name + "=" + cval + ";expires=" + exp.toGMTString()+";path=/";
}

原文地址:https://www.cnblogs.com/mjzhang/p/4613119.html