export function isObject (val) {
return val !== null && typeof val === 'object'
}
export function setStore (key, val, type = 'localStorage') {
if (isObject(val)) window[type].setItem(key, JSON.stringify(val))
else window[type].setItem(key, val)
}
export function getStore (key, type = 'localStorage') {
var val = window[type].getItem(key)
try {
return JSON.parse(val)
} catch (e) {
return val
}
}
export function setSessionStore (key, val) {
setStore(key, val, 'sessionStorage')
}
export function getSessionStore (key) {
return getStore(key)
}
// 默认30minute
export function setExpireStore (key, val, ex = 1.8e6) {
setStore(key, {v: val, t: Date.now() + ex})
}
export function getExpireStore (key) {
var obj = getStore(key)
if (obj.t > Date.now()) return obj.v
else return false
}
export default {
isObject,
setStore,
getStore,
setSessionStore,
getSessionStore,
setExpireStore,
getExpireStore
}
vue之浏览器存储方法封装
最新推荐文章于 2024-06-24 09:13:43 发布
本文介绍了一种使用JavaScript实现的前端存储管理方法,包括如何设置、获取本地存储和会话存储,以及带有过期时间的存储功能。这些实用的工具函数能够帮助开发者更高效地管理和操作浏览器的localStorage和sessionStorage。
1365

被折叠的 条评论
为什么被折叠?



