JS在web客户端保存cookie信息

http://www.chenglin.name/web/js-web/386.html

这里介绍在浏览器客户端保存cookie信息,下次浏览的时候可以获取相应信息,比如淘宝联盟根据这个cookie信息来判断是哪个网站引来的流量,然后给对应网站分账;以及根据用户浏览历史比较商品等;自己可以再web客户端留下具体信息,方便控制,简单如记住用户名,上次浏览时间,用户上次保存信息等等;

cookie是浏览器提供的一种机制,javascript可以调用document 对象的cookie属性,并不是js的性质;

cookie是存储在硬盘的,以域名为键名,下次打开该域名网站便可启用该cookie;

cookie机制将信息存储于用户硬盘,可作为全局变量,是它最大的优点。
我这里用到它主要是使用它存储天气预报地区信息,不用每次用户设置后,重新打开网页都要重新设置地区;
说说js怎么使用cookie,最后将给出实例:

1、介绍cookie;
document.cookie // document的一个属性;

2、为cookie赋值;
cookie赋值是多个值使用分号 ‘ ; ‘分割;

document.cookie = ‘key:info;key:info’;   // 赋值  多个属性使用 ' ; '分割;


3、设置cookie超时;
expires //属性设置cookie过期时间;放在cookie设置最后如下;
以下设置 cookie 在 365天后超时
var date = new Date();
date.setTime(date.getTime()+365*24*3600*1000);
document.cookie = ‘key:info;key:info;expires =' + date.toGMTString();


4、删除cookie;
删除cookie只需要设置cookie超时,过期就行了;

var date = new Date();
date.setTime(date.getTime() - 10000);  // 当前时间往前减一点,就过期了;
document.cookie = objName + "=a; expires=" + date.toGMTString();   // 设置时间过期;


5、cookie使用实例
博主右上角的天气预报有个城市设置里面就用到了,cookie保存用户上次设置的城市;作为一个实例给出js操作cookie增删改查;代码如下:

// 获取所有cookie
function getAllCookie(){
    var allstr = document.cookie;
    return allstr;
}

// 获取指定cookie
function getOneCookie(objName){
    var arrStr = document.cookie.split(";");
    for(var i = 0;i < arrStr.length;i ++){
        var temp = arrStr[i].split("=");
        if(temp[0] == objName){
            return unescape(temp[1]);
        }
    }
}

// 添加cookie
function addCookie(objName,objValue,objTime){
    var infostr = objName + '=' + escape(objValue);
    if(objTime){
        infostr += ';expires =' + objTime.toGMTString();
    }else{
        var date = new Date();
        date.setTime(date.getTime()+365*24*3600*1000);
        infostr += ';expires =' + date.toGMTString();
    }
    document.cookie = infostr; //添加
}

// 删除cookie
function delCookie(objName){
    var date = new Date();
    date.setTime(date.getTime() - 10000);
    document.cookie = objName + "=a; expires=" + date.toGMTString();
}

你可能感兴趣的:(cookie)