1、存
localStorage.setItem("phone", "123")
//对象
let obj = {"name":"xiaoming","age":"16"}
localStorage.setItem("phone",JSON.stringify(obj));
2、取
localStorage.getItem("phone")
//对象
let user = JSON.parse(localStorage.getItem("phone"))
3、删
//指定删
localStorage.removeItem('phone');
//全删
localStorage.clear();
4、设置localStorageSet 过期时间
//设置缓存
const localStorageSet = (name, data) => {
const obj = {
data,
expire: new Date().getTime() + 1000 * 60 * 30
};
localStorage.setItem(name, JSON.stringify(obj));
};
5、读取缓存,且比较时间戳是否过期
//读取缓存
const localStorageGet = name => {
const storage = localStorage.getItem(name);
const time = new Date().getTime();
let result = null;
if (storage) {
const obj = JSON.parse(storage);
if (time < obj.expire) {
result = obj.data;
} else {
localStorage.removeItem(name);
}
}
return result;
};
6、使用
//存
localStorageSet('weather', data)
//取(返回null则过期)
localStorageGet('weather')
可以换成上面的localStorage 方式
localStorage设置过期时间用法
存储一个有效期到当天晚上23:59:59失效的cookie。
//当前日期
var curDate = new Date();
//当前时间戳
var curTamp = curDate.getTime();
//当日凌晨的时间戳,减去一毫秒是为了防止后续得到的时间不会达到00:00:00的状态
var curWeeHours = new Date(curDate.toLocaleDateString()).getTime() - 1;
//当日已经过去的时间(毫秒)
var passedTamp = curTamp - curWeeHours;
//当日剩余时间
var leftTamp = 24 * 60 * 60 * 1000 - passedTamp;
var leftTime = new Date();
leftTime.setTime(leftTamp + curTamp);
//创建cookie
document.cookie = cookieName + "=" + escape(cookieValue + id + ',') + ";expires=" + leftTime.toGMTString();
/*
功能:获取cookies函数
参数:name,cookie名字
*/
function getCookie(name)
{
var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
if (arr != null)
{
return unescape(arr[2]);
} else
{
return null;
}
}
var cookieValue = getCookie(cookieName);