详解微信小程序缓存--缓存时效性

 更新时间:2019年05月02日 11:08:54   作者:江木  
这篇文章主要介绍了微信小程序缓存时效性,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

关于本地缓存

1.wx.setStorage(wx.setStorageSync)、wx.getStorage(wx.getStorageSync)、wx.clearStorage(wx.clearStorageSync)可以对本地缓存进行设置、获取和清理。本地缓存最大为10MB

2.localStorage 是永久存储

相应的api----------

wx.setStorage(OBJECT)

wx.getStorage(OBJECT)

wx.getStorageInfo(OBJECT)

wx.removeStorage(OBJECT)

wx.setStorageSync(KEY,DATA)

wx.getStorageSync(KEY)

wx.getStorageInfoSync

wx.clearStorage()

wx.clearStorageSync() ...

Api的具体使用详见官方文档

注意:这里又一个问题就是这些缓存不清理会永久的缓存----------然而实际开发中,我们往往需要设置一些缓存的时效性

所以就需要对这些api进行封装(二次开发)直接上代码

设置缓存-----------put(key, val, time)        time为可选参数表示有效时间(单位:秒)

function put(key, val, time) {

wx.setStorageSync(key, val)

var seconds = parseInt(time);

if (seconds > 0) {

var timestamp = Date.parse(new Date());

timestamp = timestamp / 1000 + seconds;

wx.setStorageSync(k + 'dtime', timestamp + "")

} else {

wx.removeStorageSync(k + 'dtime')

}

}

读取缓存-----get(key, def)-------def为可选参数,表示无缓存数据时返回值(支持字符串、json、数组、boolean等等)

function get(key, def) {

var deadtime = parseInt(wx.getStorageSync(key+ 'dtime'))

if (deadtime) {

if (parseInt(deadtime) < Date.parse(new Date()) /1000) {

if (def) { return def; }else { return; }

}

}

var res = wx.getStorageSync(key);

if (res) {

return res;

} else {

return def;

}

}

以上所述是小编给大家介绍的微信小程序缓存时效性详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Javascript 键盘事件的组合使用实现代码

    Javascript 键盘事件的组合使用实现代码

    Javascript 键盘事件的组合使用实现代码,需要的朋友可以参考下
    2012-05-05
  • JS深度拷贝Object Array实例分析

    JS深度拷贝Object Array实例分析

    这篇文章主要介绍了JS深度拷贝Object Array,结合实例形式分析了JavaScript深度拷贝的原理,需要的朋友可以参考下
    2016-03-03
  • js之切换全屏和退出全屏实现代码实例

    js之切换全屏和退出全屏实现代码实例

    这篇文章主要介绍了js之切换全屏和退出全屏实现代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • 关于js里的this关键字的理解

    关于js里的this关键字的理解

    this关键字相信大家都非常熟悉,js中提供的this关键在要比oo语言中混乱,下面通过本文给大家介绍js里this关键字的理解,需要的朋友可以参考下
    2015-08-08
  • Svg.js实例教程及使用手册详解(一)

    Svg.js实例教程及使用手册详解(一)

    SVG.js是一个轻量级的JavaScript库,允许你轻松操作SVG和定义动画。这篇文章主要介绍了Svg.js实例教程及使用手册详解(一) 的相关资料,需要的朋友可以参考下
    2016-05-05
  • 保姆级Decimal.js使用教程(解决js精度问题)

    保姆级Decimal.js使用教程(解决js精度问题)

    这篇文章主要给大家介绍了关于保姆级Decimal.js使用的相关资料,文中介绍的方法主要解决了js精度问题,decimal.js库它是一个强大的JavaScript库,用于解决浮点数计算精度不准确的问题,需要的朋友可以参考下
    2024-05-05
  • js+canvas实现网站背景鼠标吸附线条动画

    js+canvas实现网站背景鼠标吸附线条动画

    这篇文章主要为大家详细介绍了js+canvas实现网站背景鼠标吸附线条动画,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • JavaScript图片url地址转base64简单示例

    JavaScript图片url地址转base64简单示例

    这篇文章主要给大家介绍了关于JavaScript图片url地址转base64的相关资料,图片URL转Base64是把图片URL转化为一个以base64编码的字符串格式,使得图片可以直接在HTML或CSS中使用,需要的朋友可以参考下
    2023-10-10
  • BootStrap 获得轮播中的索引和当前活动的焦点对象

    BootStrap 获得轮播中的索引和当前活动的焦点对象

    这篇文章主要介绍了BootStrap 获得轮播中的索引和当前活动的焦点对象,本文给大家介绍的非常详细,需要的朋友可以参考下
    2017-05-05
  • js+html制作简单日历的方法

    js+html制作简单日历的方法

    这篇文章主要为大家详细介绍了js html制作简单日历的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06

最新评论