html5 localStorage and cookie

html5 cookie

    //添加cookie
    document.cookie = 'username=zhangsan';
    //修改cookie(覆盖cookie)
    document.cookie = 'username=lisi';

    //设置cookie生命周期
    var date = new Date();
    var days = 30;  //当用户再次登录刷新时间
    //将date设置为30天以后的时间
    date.setTime(date.getTime() + days * 24 * 3600 * 1000);
    document.cookie = "userId=1000; expires=" + date.toGMTString();

    //删除cookie,将时间设置为过期时间即可
    date = new Date();
    date.setTime(date.getTime() - 1000);
    document.cookie = "userId=1000; expires=" + date.toGMTString();

    //获取指定cookie值,用split()方法
    document.cookie='age=18';
    var arr = document.cookie.split(';');
    var name = arr[0].split('=')[1];
    console.info(name + ' username查找到了');

封装的操作cookie的函数

1.添加一个cookie:addCookie(name,value,expireHours)
该函数接收3个参数:cookie名称,cookie值,以及在多少小时后过期。这里约定expireHours为
0时不设定过期时间,即当浏览器关闭时cookie自动消失。该函数实现如下:

<script type="text/javascript">
    function addCookie(name, value, expireHours){
        var cookieString = name + "=" + escape(value);
        //判断是否设置过期时间
        if (expireHours > 0) {
            var date = new Date();
            date.setTime(date.getTime + expireHours*3600*1000);
            cookieString = cookieString+ "; expires=" + date.toGMTString();
        }
        document.cookie = cookieString;
    }
</script>

2.获取指定名称的cookie值:getCookie(name)
该函数返回名称为name的cookie值,如果不存在则返回空,其实现如下:

 <script type="text/javascript">
    function getCookie(name){
        var strCookie=document.cookie;
        var arrCookie=strCookie.split("; ");
        for(var i=0;i<arrCookie.length;i++){
            var arr=arrCookie[i].split("=");
            if(arr[0]==name)return arr[1];
         }
         return "";
    }
</script>

3.删除指定名称的cookie:deleteCookie(name)
该函数可以删除指定名称的cookie,其实现如下:

 <script language="JavaScript" type="text/javascript">
   function deleteCookie(name){
        var date=new Date();
        date.setTime(date.getTime()-10000);
        document.cookie=name+"=v; expires="+date.toGMTString();
    }
</script>

html5 localStorage

    var localStorage = window.localStorage;

    //设置localStorage数据
    localStorage.setItem('username', 'zhangsan');
    localStorage.name = 'lisi';
    localStorage['firstname'] = 'wanger';

    //修改localStorage数据(覆盖)
    localStorage.setItem('firstname', 'lisi');

    //删除localStorage数据
    localStorage.removeItem('username');

    //通过key()取得key值;
    console.info(localStorage.key(0));
    console.info(localStorage.getItem(localStorage.key(0)));

localstorage网址

http://www.cnblogs.com/xiaowei0705/archive/2011/04/19/2021372.html
http://blog.csdn.net/hbcui1984/article/details/8466743
http://www.cnblogs.com/dolphinX/p/3405335.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值