localStorage的过期时间设置的方法详解


Posted in HTML / CSS onNovember 26, 2018

我们都知道localStorage不主动删除,永远不会销毁,那么如何设置localStorage的过期时间呢,今天我们来一起尝试一下!

<script type="text/javascript">
    //封装过期控制代码
    function set(key,value){
        var curTime = new Date().getTime();
        localStorage.setItem(key,JSON.stringify({data:value,time:curTime}));
    }
    function get(key,exp){
        var data = localStorage.getItem(key);
        var dataObj = JSON.parse(data);
        if (new Date().getTime() - dataObj.time>exp) {
            console.log('信息已过期');
            //alert("信息已过期")
        }else{
            //console.log("data="+dataObj.data);
            //console.log(JSON.parse(dataObj.data));
            var dataObjDatatoJson = JSON.parse(dataObj.data)
            return dataObjDatatoJson;
        }
    }
 </script>

使用场景:

1.利用本地数据,减少网络传输
2.弱网络环境下,高延迟,低带宽,尽量把数据本地化

使用方法:

<script>
window.onload = function(){
    var Ipt = document.getElementById('input1');
    var value = '{"name":"和派孔明","Age":"18","address":"陆家嘴金融城"}';
    set('information',value);

    Ipt.onclick = function(){
        //var dataObjData=get('information',1000);//过期时间为1秒,正常情况下,你点击的时候已经过期
        //var dataObjData=get('information',1000*60);//过期时间为1分钟
        //var dataObjData=get('information',1000*60*60);//过期时间为1小时
        //var Obj=get('information',1000*60*60*24);//过期时间为24小时
        var dataObjData=get('information',1000*60*60*24*7);//过期时间为1周
        console.log(dataObjData || null);
            if (dataObjData!="" && dataObjData!=null) {
                    console.log("姓名:"+dataObjData.name);
                    console.log("年龄:"+dataObjData.Age );
                    console.log("地址:"+dataObjData.Age );
            }else{
                alert("获取的信息已经过期");
            }   
    }
}
</script>

localStorage过期控制运行代码结果之未过期

localStorage的过期时间设置的方法详解

localStorage过期控制运行代码结果之已过期

localStorage的过期时间设置的方法详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

HTML / CSS 相关文章推荐
CSS3制作ajax loader icon实现思路及代码
Aug 25 HTML / CSS
css3设置box-pack和box-align让div里面的元素垂直居中
Sep 01 HTML / CSS
纯CSS3制作漂亮带动画效果的主机价格表
Apr 25 HTML / CSS
Html5游戏开发之乒乓Ping Pong游戏示例(一)
Jan 21 HTML / CSS
用HTML5制作视频拼图的教程
May 13 HTML / CSS
详解HTML5中ol标签的用法
Sep 08 HTML / CSS
canvas环形倒计时组件的示例代码
Jun 14 HTML / CSS
HTML5+CSS设置浮动却没有动反而在中间且错行的问题
May 26 HTML / CSS
元素水平垂直居中的方式
Mar 31 HTML / CSS
关于html选择框创建占位符的问题
Jun 09 HTML / CSS
css中z-index: 0和z-index: auto的区别
Aug 23 HTML / CSS
浅析CSS在DevTools 中架构演变
Oct 05 HTML / CSS
canvas拼图功能实现代码示例
Nov 21 #HTML / CSS
详解Canvas 跨域脱坑实践
Nov 07 #HTML / CSS
浅谈移动端网页图片预加载方案
Nov 05 #HTML / CSS
Canvas中设置width与height的问题浅析
Nov 01 #HTML / CSS
html5 postMessage前端跨域并前端监听的方法示例
Nov 01 #HTML / CSS
HTML5之消息通知的使用(Web Notification)
Oct 30 #HTML / CSS
详解Html5页面实现下载文件(apk、txt等)的三种方式
Oct 22 #HTML / CSS
You might like
WordPress中自定义后台管理界面配色方案的小技巧
2015/12/29 PHP
javascript delete 使用示例代码
2010/03/29 Javascript
jQuery选择器的工作原理和优化分析
2011/07/25 Javascript
JS判断不能为空实例代码
2013/11/26 Javascript
jQuery is()函数用法3例
2014/05/06 Javascript
js检验密码强度(低中高)附图
2014/06/05 Javascript
javascript中select下拉框的用法总结
2016/01/07 Javascript
TypeOf这些知识点你了解吗
2016/02/21 Javascript
js 截取或者替换字符串中的数字实现方法
2016/06/13 Javascript
jquery validate表单验证插件
2016/09/06 Javascript
微信小程序 特效菜单抽屉效果实例代码
2017/01/11 Javascript
纯JS实现弹性导航条效果
2017/03/06 Javascript
Javascript实现倒计时时差效果
2017/05/18 Javascript
javascript帧动画(实例讲解)
2017/09/02 Javascript
浅谈Express异步进化史
2017/09/09 Javascript
NodeJS实现视频转码的示例代码
2017/11/18 NodeJs
JS/jQuery实现DIV延时几秒后消失或显示的方法
2018/02/12 jQuery
关于在vue 中使用百度ueEditor编辑器的方法实例代码
2018/09/14 Javascript
vue 修改 data 数据问题并实时显示操作
2020/09/07 Javascript
Vue axios 跨域请求无法带上cookie的解决
2020/09/08 Javascript
js获取图片的base64编码并压缩
2020/12/05 Javascript
Python 命令行参数sys.argv
2008/09/06 Python
python模块restful使用方法实例
2013/12/10 Python
从零学Python之hello world
2014/05/21 Python
Python的Flask框架应用程序实现使用QQ账号登录的方法
2016/06/07 Python
Django Sitemap 站点地图的实现方法
2019/04/29 Python
python占位符输入方式实例
2019/05/27 Python
python加密解密库cryptography使用openSSL生成的密匙加密解密
2020/02/11 Python
Python无头爬虫下载文件的实现
2020/04/02 Python
基于Python实现下载网易音乐代码实例
2020/08/10 Python
HTML5调用手机摄像头拍照的实现思路及代码
2014/06/15 HTML / CSS
极度干燥澳大利亚官方网站:Superdry澳大利亚
2019/03/28 全球购物
Nike加拿大官网:Nike.com (CA)
2019/04/09 全球购物
thinkphp5 redis缓存新增方法实例讲解
2021/03/24 PHP
2015年创先争优工作总结
2015/05/23 职场文书
小学语文教师研修感悟
2015/11/18 职场文书