js手动定时清除localStorage
<script type="text/javascript">
// 假设要保存变量 a 的值,过期时间为 3600秒
// 保存值
var obj = new Object(); // 或者 var obj = {};
obj.a = a; // 要保存的变量
obj.time = 3600; // 过期时间
obj.date = 1234567890 // 保存变量时的那个时间点,这里以时间戳为例 var objString = JSON.stringify(obj); // 由于 localStorage 只能保存字符串内容,所以这里要先把对象转换成 JSON 字符串
window.localStorage.setItem('data',objString); // 取值
var b = window.localStorage.getItem('data');
var c = JSON.parse(b); // 将 JSON 字符串转成对象
var time = c.time;
var date = c.date;
if ((parseInt(time) + parseInt(date)) < '当前时间戳') {
// 如果 date + time 小于当前时间的时间戳,说明已经超过3600秒的时效时间
}else{
// 如果 date + time 大于当前时间戳,说明没过期
var d = c.a; // 之前保存的变量值
// 然后要怎么用就怎么用
}
</script>
方案二:使用插件ifvisible.js 具体使用方法如下:
<script src="js/ifvisible.js"></script><!--引入js文件-->
<script type="text/javascript">
ifvisible.setIdleDuration(10);//设置监控时间,单位是s
//闲置状态时,执行的函数
ifvisible.idle(function() {
console.log('您已超时')
});
//活跃状态时执行的函数
ifvisible.wakeup(function(){
console.log('活动状态')
});
</script>
ifvisible.js使用方法很简单,还提供其他几种简单的方法,具体参考github地址:
https://github.com/serkanyersen/ifvisible.js
js手动定时清除localStorage的更多相关文章
- store.js 跨浏览器的localStorage
store.js 跨浏览器的localStorage 我们总是想要储存一些数据在浏览器端,却对复杂的兼容性头疼,store.js很好的解决了这些问题. store.js ☍ 使用它相当简单: // 储 ...
- HTML5 JS API 本地存储LocalStorage基本操作
LocalStorage:使用方法与SessionStorage如出一辙,如下代码所示:此对象主要有两个方法:保存数据:localStorage.setItem(Key, value);读取数据:lo ...
- Linux 定时清除日志 Log
一.原因 写这篇的原因是项目中log没有定时清除,服务器上项目是用脚本启动,log文件只会在启动时生成一次,这时,由于项目在不断运行中,导致log越来越大.如果删除log文件,还得把项目停掉在启动,这 ...
- 利用SqlServer的作业定时清除过期数据
有时候我们的数据库中可能会有那么些存放动态数据的表,比如一些每天定时发出的消息通知信息等数据.这些数据我们只需要临时保存,一些老旧的数据需要定时去清除掉,不然时间一长的话单表数据堆积非常严重.导致数据 ...
- JS的定时到底有多不准
博客逐步迁移到,独立博客,原文地址,http://www.woniubi.cn/js_hide_tab_setinterval/ 我们一直都在说,JS的定时非常的不准确,但是很少有人去验证他,今天我就 ...
- 纯js手动分页
昨天让做个页面,后台提供所有数据,没有做好分页,需要前端js手动分页. 我参考了 http://www.cnblogs.com/jiechn/p/4095029.html 做了些许改动让分页效果更加完 ...
- JS的本地保存localStorage、sessionStorage用法总结
localStorage 生命周期是永久的 这意味着除非用户显示在浏览器提供的UI上清除localStorage信息,否则这些信息将永远存在. sessionStorage 生命周期为当前窗口或标签 ...
- 定时清除 /var/log/massage 下的信息脚本文件
定时清除 /var/log/massage 下的信息脚本 #!/bin/sh #Date: 0:07 #Author: Xiaodong #Mail: 990974238@qq.com #Puncti ...
- js手动抛出异常
//js手动抛异常 if(!id){ throw new Error("选择标识无效"); } js抓取异常 try{ }catch (e) { console.log(e.msg ...
随机推荐
- 2.SSH 两个表全套增删改(运动员住宿管理)
0.创建如下oracle的命令 create table HOTALINFO ( HOTALID ) not null, HOTALNAME ) not null, HOTALADDRESS ) no ...
- xml00
<?xml verson="1.0" encoding="ISO-8859-1"?> xml声明<note> <to>jon ...
- C# string bytes互转
string str = "spike"; byte[] bytes = System.Text.Encoding.Default.GetBytes(str); foreach ( ...
- [Asp.net]EF更新之后要 保存
数据库那边保存表 项目里保存模型
- SSAO + FXAA
如今已经完毕了渲染器的屏幕空间环境光遮挡(SSAO)算法和FXAA高速反走样算法,等有时间就把当中的相关原理和当中遇到的问题进行总结发表.
- [Spring实战系列](17)编写切点与声明切面
切点用于准确定位应该在什么地方应用切面的通知. 切点和通知是切面的最基本元素. 在Spring AOP中,须要使用AspectJ的切点表达式语言来定义切点. 关于Spring AOP的AspectJ切 ...
- 一个关于 UIPickerView 的 bug
首先,我下描写叙述一下bug的发生情况: 在使用UIPickerView实现选择城市的时候.出现这样一个Bug 1.在iOS 6的系统上 2.Picker的数据上省份一栏选择了"香港&quo ...
- 机器学习 数据量不足问题----1 做好特征工程 2 不要用太多的特征 3 做好交叉验证 使用线性svm
来自:https://www.zhihu.com/question/35649122 其实这里所说的数据量不足,可以换一种方式去理解:在维度高的情况下,数据相对少.举一个特例,比如只有一维,和1万个数 ...
- NEU 1664 传送(最短路基础 堆优化Dijkstra)
题目描述 小A最近喜欢上一款游戏:游戏把地图分了一些区域,这些区域可能会重叠,也可能不会. 游戏中有一项传送技能,改传送技能只能将在同一区域的两个地方使用.小A可以利用区域中重叠部分来实现从某一区域到 ...
- electron-vue中使用iview 报错this. is readonly的解决办法
title: electron-vue中使用iview 报错this. is readonly的解决办法 toc: false date: 2019-02-12 19:33:28 categories ...